其他分享
首页 > 其他分享> > wpf 自动创建桌面快捷方式

wpf 自动创建桌面快捷方式

作者:互联网

`
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("桌面快捷方式已创建!");
        }
    }`

标签:桌面,exePath,System,IW,Environment,WshShortcut,shortcut,快捷方式,wpf
来源: https://www.cnblogs.com/mingyao-yuan/p/13968991.html