为了账号安全,请及时绑定邮箱和手机立即绑定

如何在 Windows 启动(更新)时运行 C# 应用程序?

如何在 Windows 启动(更新)时运行 C# 应用程序?

C#
素胚勾勒不出你 2022-08-20 15:10:41
我想在启动时运行 C# 应用程序。我用了这个代码,我在这里找到:private void SetStartup(bool enable)    {        string runKey = "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run";        RegistryKey startupKey = Registry.CurrentUser.OpenSubKey(runKey);        if (enable)        {            if (startupKey.GetValue("ZanNews") == null)            {                startupKey.Close();                startupKey = Registry.CurrentUser.OpenSubKey(runKey, true);                startupKey.SetValue("ZanNews", "\"" + Application.ExecutablePath + "\"");                startupKey.Close();            }        }        else        {            startupKey = Registry.CurrentUser.OpenSubKey(runKey, true);            startupKey.DeleteValue("ZanNews", false);            startupKey.Close();        }    }尽管该条目显示在注册表和任务管理器中,但该程序不会从 Windows 开始。在提出这个问题之前,我对StackOverflow进行了研究,这里和这里提出的解决方案和代码片段都没有奏效。要么我收到安全和访问错误消息,要么注册表已写入,但程序拒绝从操作系统启动。然而,我看到上面的问题是在2010年和2011年被问到的,我认为从那时起事情发生了变化。有没有办法让程序在启动时运行?我在 Windows 10 2018 年 4 月更新上安装了 Windows 10、家庭版、版本 1803 和 .NET Framework 4.7.2。
查看完整描述

1 回答

?
呼啦一阵风

TA贡献1802条经验 获得超6个赞

做一些研究,我发现这是创建快捷方式并将其放在文件夹中的更好方法。这里提供了更多细节,代码(工作并解决问题)是:Startup


        WshShell wshShell = new WshShell();

        IWshRuntimeLibrary.IWshShortcut shortcut;

        string startUpFolderPath =

          Environment.GetFolderPath(Environment.SpecialFolder.Startup);


        // Create the shortcut

        shortcut =

          (IWshRuntimeLibrary.IWshShortcut)wshShell.CreateShortcut(

            startUpFolderPath + "\\" +

            Application.ProductName + ".lnk");


        shortcut.TargetPath = Application.ExecutablePath;

        shortcut.WorkingDirectory = Application.StartupPath;

        shortcut.Description = "Launch My Application";

        // shortcut.IconLocation = Application.StartupPath + @"\App.ico";

        shortcut.Save();

为了能够使用上述代码,需要包含命名空间并将 Windows 脚本宿主对象模型引用添加到项目中。IWshRuntimeLibrary


其他参考资料在这里


查看完整回答
反对 回复 2022-08-20
  • 1 回答
  • 0 关注
  • 101 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信