Удаление ярлыка «Все пользователи» для текущего пользователя в C # - PullRequest
0 голосов
/ 07 января 2012

У меня есть следующий фрагмент кода 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))

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

...