Удаление ярлыка "Все пользователи" для текущего пользователя в C#

У меня есть следующий фрагмент кода C# .NET 4, в котором перечислены файлы, являющиеся частью рабочего стола "Все пользователи", которые отображаются на рабочем столе текущих пользователей:

foreach (String desktopFilePath in Directory.GetFiles(Environment.GetFolderPath(Environment.SpecialFolder.CommonDesktopDirectory)))
{
    Console.WriteLine(desktopFilePath);
}

Например:

C: \ Documents and Settings \ Все пользователи \ Рабочий стол \SomeShortcut.lnk

Обратите внимание, что я использую пример ярлыка, но я ожидаю, что это будет то же самое для любого другого типа файла.

То, что я хочу сделать, это подражать текущему пользователю, удаляющему этот файл со своего рабочего стола (он снова появится, когда они выйдут и вернутся).

Я ожидал увидеть этот файл в списке при использовании SpecialFolder.Desktop, потому что это должно относиться к логическому рабочему столу, а не к физическому рабочему столу, но это не так.

Например, это не перечисляет вышеупомянутый файл:

Directory.GetFiles(Environment.GetFolderPath(Environment.SpecialFolder.Desktop))

Итак, как мне удалить "логическую" версию этого файла?

0 ответов

Другие вопросы по тегам