gpt4 book ai didi

C# 应用程序未在启动时运行,Windows 10 上的启动影响 "not measured"

转载 作者:行者123 更新时间:2023-11-30 23:25:14 25 4
gpt4 key购买 nike

我有一个小型 WPF 应用程序。我正在尝试在 Windows 启动时启动它我的C#代码如下:

using (RegistryKey key = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true))
{
key.SetValue("MyApp", "\"" + System.Reflection.Assembly.GetExecutingAssembly().Location + "\"");
key.Close();
}

并删除了RegistryKey:

using (RegistryKey key = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true))
{
key.DeleteValue("MyApp", false);
key.Close();
}

我构建了一个可执行文件 (MyApp.exe) 并安装在我的计算机上。但是当 Windows 启动时应用程序仍然没有运行。我能怎么做?如何在任务管理器上将启动影响“未测量”更改为其他?

我使用的是 Windows 10 x64。对不起我的英语。

谢谢。

最佳答案

对于像我这样有问题的人,我已经解决了我的问题,我的应用程序需要以管理员身份运行,所以如果我像上面那样编写代码并设置 app.manifest

<requestedExecutionLevel level = "requireAdministrator" UIAccess = "false "/>

它不会在启动 Windows 时运行。

为了解决这个问题,我将代码从 CurrentUser 更改为 LocalMachine:

 using (RegistryKey key = Registry.LocalMachine.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true))
{
key.SetValue("TechTemp", "\"" + System.Reflection.Assembly.GetExecutingAssembly().Location + "\"");
key.Close();
}

 using (RegistryKey key = Registry.LocalMachine.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true))
{
key.DeleteValue("TechTemp", false);
key.Close();
}

下一个问题是如何为您的应用程序关闭 UAC(如果您的计算机上启用了 UAC),您可以参见 here .关于状态影响,您的应用程序仍将在窗口启动时运行,即使任务管理器上的状态为“未测量”。谢谢Rashid MalikSami

更新

您可以阅读 here在不添加注册表项的情况下在 Windows 启动时运行应用程序,这对我有用。

关于C# 应用程序未在启动时运行,Windows 10 上的启动影响 "not measured",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37440196/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com