【C#】关于生成快捷方式的技术问题
【C#】关于生成快捷方式的技术问题
孤月蓝风 发表于1个月前
【C#】关于生成快捷方式的技术问题
  • 发表于 1个月前
  • 阅读 1
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云实验室 1小时搭建人工智能应用,让技术更容易入门 免费体验 >>>   

做ASP.NET迷你服务器时,最后突然想到如果能够增加一个保存快捷方式的功能的话,以后直接打开服务器,并且设定好一切都会很方便,于是就在MSDN上寻找相关技术文章与教程,最后一无所获,无奈下只能上网找资料了。

最后成功的找到了相关的文章,通过代码了解了生成快捷方式这个技术需要使用Win32API,最后又通过反复试验,最终搞定。

下面是生成快捷方式的代码:

private void label_sckjfs_Click(object sender, EventArgs e)
         {
             JiaoYan();
             if (tingzhi == "true")
             {
                 tingzhi = "";
                 return;
             }
             string path_zhuomian = "";
             RegistryKey key = Registry.CurrentUser;
             //打开对应的注册表项,并获取Desktop键的值,这个是用来寻找桌面路径。
             path_zhuomian = key.OpenSubKey("Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders").GetValue("Desktop").ToString();
             path_zhuomian = path_zhuomian + "\";
             try
             {
                 //生成WshShell的实例
                 WshShell shell = new WshShell();
                 //CreatShortcut中的参数是生成快捷方式的目录及文件名
                 IWshShortcut kjfs = (IWshShortcut)shell.CreateShortcut(path_zhuomian + TB_KJFS.Text + ".lnk");
                 //快捷方式的目标路径:生成哪个文件的快捷方式,就是哪个文件的目录加文件名
                 kjfs.TargetPath = lujing + banben;
                 //快捷方式的启动参数
                 kjfs.Arguments = canshu;
                 //快捷方式的备注(描述)
                 kjfs.Description = "";
                 //快捷方式的工作目录,就是源程序的目录,和目标路径的目录一样
                 kjfs.WorkingDirectory = @"C:Program FilesCommon Filesmicrosoft sharedDevServer10.0";
                 //快捷方式的图标,我还不知道怎样能直接使用ico图标,以及使用当前程序的图标
                 kjfs.IconLocation = "iscsicli.exe,0";
                 //快捷方式的快捷键
                 kjfs.Hotkey = "";
                 //快捷方式的样式
                 kjfs.WindowStyle = 1;
                 //保存快捷方式
                 kjfs.Save();
                 MessageBox.Show("快捷方式生成成功。");
             }
             catch
             {
                 MessageBox.Show("未知错误!");
             }
         }

以上就是生成快捷方式的方法,需要引用一个COM组件,Interop.IWshRuntimeLibrary.dll

引用之后就可以使用上面的代码来生成快捷方式了。

标签: C# MSDN 快捷方式
共有 人打赏支持
粉丝 8
博文 70
码字总数 36962
×
孤月蓝风
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: