private void CreateShortcutOnStartup()
{
string StartupPath = System.Environment.GetFolderPath(System.Environment.SpecialFolder.CommonStartup);
//添加引用 (com->Windows Script Host Object Model),using IWshRuntimeLibrary;
//String shortcutPath = Path.Combine(Directory.GetCurrentDirectory(), "printJwms.lnk");
String shortcutPath = Path.Combine(StartupPath, "printJwms.lnk");
if (!System.IO.File.Exists(shortcutPath))
{
// 获取当前应用程序目录地址
String exePath = Process.GetCurrentProcess().MainModule.FileName;
IWshShell shell = new WshShell();
// 确定是否已经创建的快捷键被改名了
//foreach (var item in Directory.GetFiles(Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory), "*.lnk"))
//{
// WshShortcut tempShortcut = (WshShortcut)shell.CreateShortcut(item);
// if (tempShortcut.TargetPath == exePath)
// {
// return;
// }
//}
WshShortcut shortcut = (WshShortcut)shell.CreateShortcut(shortcutPath);
shortcut.TargetPath = exePath;
shortcut.Arguments = "";// 参数
shortcut.Description = "打印";
shortcut.WorkingDirectory = Environment.CurrentDirectory;//程序所在文件夹,在快捷方式图标点击右键可以看到此属性
shortcut.IconLocation = exePath;//图标,该图标是应用程序的资源文件
//shortcut.Hotkey = "CTRL+SHIFT+W";//热键,发现没作用,大概需要注册一下
shortcut.WindowStyle = 1;
shortcut.Save();
/*方法一*/
//string StartupPath = System.Environment.GetFolderPath(System.Environment.SpecialFolder.CommonStartup);
//获得文件的当前路径
//string dir = Directory.GetCurrentDirectory();
获取可执行文件的全部路径
//string exeDir = dir + @"\printJwms.lnk";
//System.IO.File.Copy(exeDir, StartupPath + @"\printJwms.lnk", true);
//System.IO.File.Delete(exeDir);
}
}