C# 以编程方式移动快捷方式图标

C# 以编程方式移动快捷方式图标,c#,file-io,desktop-shortcut,C#,File Io,Desktop Shortcut,在我的Windows7电脑中,我安装了一些具有桌面快捷方式的应用程序。我的桌面有多个用户帐户。对于一些应用程序,我的快捷方式只放在我的管理桌面上。我希望其他用户也能使用它们。所以我写了一个程序,将管理桌面图标移动到公共桌面。我是这样做的: File.Move(System.Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory) + @"\MyShortcut.lnk", System.Environment.Ge

在我的Windows7电脑中,我安装了一些具有桌面快捷方式的应用程序。我的桌面有多个用户帐户。对于一些应用程序,我的快捷方式只放在我的管理桌面上。我希望其他用户也能使用它们。所以我写了一个程序,将管理桌面图标移动到公共桌面。我是这样做的:

File.Move(System.Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory) + @"\MyShortcut.lnk", System.Environment.GetFolderPath(Environment.SpecialFolder.CommonDesktopDirectory) + @"\MyShortcut.lnk");
现在我在所有其他帐户中都看到了这些快捷方式文件。它仍然在管理员帐户工作良好。但在其他方面,它们的行为不再像捷径。属性本身中的快捷方式选项卡不可见(在其他帐户中)。我也手动做了同样的事情,它就像一个冠军。为什么会发生这种情况,以任何其他方式以编程方式完成相同的任务