使用C#,如何从用户桌面删除快捷方式?
试了这个没有成功:
string WinUser = WindowsIdentity.GetCurrent().Name;
WinUser = WinUser.Substring(WinUser.LastIndexOf("\\") + 1);
File.Delete("C:\\Users\\" + WinUser + "\\Desktop\\Touch Data.lnk");
我错过了什么?感谢任何关于此的建议!
答案 0 :(得分:12)
尝试以下方法:
string desktopPath = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
File.Delete(Path.Combine(desktopPath, "Touch Data.lnk"));
答案 1 :(得分:3)
我在这个问题中遇到过这个问题:
Why does FolderBrowserDialog not allow the desktop as SelectedPath when RootFolder is MyComputer?
我得到的答案是:
显然,Win 7中的桌面实际上并不存在于路径
中C:\ Users \用户名\桌面
系统在命令提示符和Windows中假装它 探险家。但由于它不存在,所以SelectedPath的那部分 要求其路径在RootFolder下不允许设置路径 那样。
这可能是问题所在。您应该使用Environment.GetFolderPath函数来获取真实桌面上的句柄。 :)
答案 2 :(得分:1)
我有同样的情况,我必须检查快捷方式是否存在,然后将其删除。我使用了以下代码
string desktopPath = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
if(System.IO.File.Exists(Path.Combine(desktopPath , "shortcut.lnk")))
{
System.IO.File.Delete(Path.Combine(desktopPath , "shortcut.lnk"));
}
答案 3 :(得分:0)
System.IO.File.Delete("C:/Users/Public/Desktop/Game.lnk");
:))赢得7个标准用户名public