47

我对这两个特殊文件夹之间的差异感到困惑。

这是一个编写每个输出的代码片段,但它们输出相同的东西。

string path = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
string pathTwo = Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory);

Console.WriteLine(path);
Console.WriteLine(pathTwo);

Console.ReadKey();

根据MSDN文档(对于 .NET 1.1):

桌面
逻辑桌面而不是物理文件系统位置。

DesktopDirectory
用于在桌面上物理存储文件对象的目录。不要将此目录与桌面文件夹本身混淆,后者是一个虚拟文件夹。

它说的时候是什么意思the logical Desktop rather than the physical file system location?另外,virtual folder简单来说什么是a?

在较新的 .NET 4 版本的文档中,我注意到他们Desktop完全删除了仅剩下的DesktopDirectory. 为什么是这样?

4

2 回答 2

31

目录是文件系统中的一个位置。文件夹是 shell 命名空间中的一个位置。目录是一种文件夹。虚拟文件夹不一定由目录支持。例如,考虑库或搜索文件夹。

用户的桌面目录是文件系统中的一个位置。桌面文件夹将其与所有用户项目、回收站、文档文件夹的快捷方式等虚拟项目合并。

于 2011-04-10T15:08:59.780 回答
0

真正的答案是这些可能不同,尤其是服务器上的宽度配置文件。用户可能正在从文件共享运行桌面,或者将其放在本地系统上......如果重定向操作系统通常不会通知其他软件它已经这样做了。但如果你真的想去那里...

于 2018-11-14T17:51:41.000 回答