Перемещение ярлыков программно - PullRequest
1 голос
/ 24 ноября 2011

На моем ПК с Windows 7 установлено несколько приложений с ярлыками на рабочем столе. Мой рабочий стол имеет несколько учетных записей пользователей. Для некоторых приложений у меня были ярлыки, размещенные только на рабочем столе администратора. Я хотел, чтобы они были доступны и для других пользователей. Поэтому я написал программу, которая перемещает значок рабочего стола администратора на общий рабочий стол. Я сделал что-то вроде этого:

File.Move(System.Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory) + @"\MyShortcut.lnk", System.Environment.GetFolderPath(Environment.SpecialFolder.CommonDesktopDirectory) + @"\MyShortcut.lnk");

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

...