如何从程序文件夹中删除程序图标?
答案 0 :(得分:6)
要获取开始菜单位置,请使用SpecialFolder enumeration。像下面这样的东西应该让你开始:
string startMenuDir = Environment.GetFolderPath(Environment.SpecialFolder.StartMenu);
string shortcut = Path.Combine(startMenuDir, @"The Company\MyShortcut.lnk");
if (File.Exists(shortcut))
File.Delete(shortcut);
如果您不知道确切的文件名,可以使用Directory.GetFiles或Directory.GetDirectories枚举开始菜单文件夹中的所有文件。 您还可以使用Directory.Delete
删除整个文件夹(“公司”)答案 1 :(得分:5)
快捷方式文件是一个普通文件,恰好将调用重定向(点击)到另一个文件,程序或目录。要删除快捷方式,您可以使用File.Delete方法。
File.Delete(path_to_lnk_file);
答案 2 :(得分:2)
在Windows资源管理器中,即使您已禁用隐藏已知文件类型的扩展程序功能,也不会显示链接(lnk)的文件扩展名。
因此,如果要删除“foobar.exe快捷方式”快捷方式,则必须执行
File.Delete("Shortcut to foobar.exe.lnk");
答案 3 :(得分:1)
您可以在快捷方式上使用标准文件操作。
我认为文件扩展名是lnk。
答案 4 :(得分:0)
1-请确保使用OpenFileDialog获取实际的文件链接
OpenFileDialog od = new OpenFileDialog(); od.DereferenceLinks = false;
2使用shell lib获取所有信息,包括路径