wpf 自動建立桌面快捷方式
阿新 • • 發佈:2020-11-13
`
using IW = IWshRuntimeLibrary;
public static void CreateShortcutOnDesktop( string LnkName)
{
String shortcutPath = System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory), LnkName + ".lnk"); if (!System.IO.File.Exists(shortcutPath)) { string AppName = System.IO.Path.GetFileName(System.Reflection.Assembly.GetEntryAssembly().GetName().Name); // 獲取當前應用程式目錄地址 String exePath = AppDomain.CurrentDomain.BaseDirectory + AppName + ".exe"; IW.IWshShell shell = new IW.WshShell(); // 確定是否已經建立的快捷鍵被改名了 foreach (var item in Directory.GetFiles(Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory), "*.lnk")) { IW.WshShortcut tempShortcut = (IW.WshShortcut)shell.CreateShortcut(item); if (tempShortcut.TargetPath == exePath) { return; } } IW.WshShortcut shortcut = (IW.WshShortcut)shell.CreateShortcut(shortcutPath); shortcut.TargetPath = exePath; shortcut.Arguments = "";// 引數 shortcut.Description = AppName + exePath; shortcut.WorkingDirectory = Environment.CurrentDirectory;//程式所在資料夾,在快捷方式圖示點選右鍵可以看到此屬性 shortcut.IconLocation = exePath;//圖示,該圖示是應用程式的資原始檔 //shortcut.Hotkey = "CTRL+SHIFT+W";//熱鍵,發現沒作用,大概需要註冊一下 shortcut.WindowStyle = 1; shortcut.Save(); MessageBox.Show("桌面快捷方式已建立!"); } }`