Какая разница между SpecialFolder.Desktop и SpecialFolder.DesktopDirectory?

Я запутался в различиях между этими двумя специальными папками.

Вот фрагмент кода, который записывает вывод каждого из них, но выводит одно и то же.

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):

Desktop
Логический Desktop, а не физическое расположение файловой системы.

DesktopDirectory
Каталог, используемый для физического хранения файлов на рабочем столе. Не путайте этот каталог с самой папкой рабочего стола, которая является виртуальной папкой.

Что это значит, когда он говорит the logical Desktop rather than the physical file system location? Кроме того, что такое virtual folder в простых терминах?

В новой версии .NET 4 документации я заметил, что они полностью удалили Desktop и оставили только DesktopDirectory. Почему это?

Ответ 1

Каталог - это местоположение в файловой системе. Папка - это место в пространстве имен оболочки. Каталог - это своего рода папка. Виртуальная папка не обязательно поддерживается каталогом. Например, рассмотрите библиотеки или папки поиска.

Каталог рабочего стола пользователя - это место в файловой системе. Папка рабочего стола объединяется с виртуальными элементами, такими как все элементы пользователей, корзины, ярлык для папки документов и т.д.