-1

我的问题是我的应用程序在将其添加到清单后不再在系统启动时启动

 <requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
      </requestedPrivileges>

我知道它与 Windows UAC 有关。但我真的不知道如何在不失去程序启动管理员权限的情况下解决这个问题。

这就是我写入注册表的方式:

 if (checkBox13.Checked)
            {
                File.WriteAllText(@"C:\ProgramData\Programname\autorunstate", "true");

                RegistryKey rk = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);
                rk.SetValue("Programname", Application.ExecutablePath.ToString());

            }

如果有人能告诉我如何让程序现在在系统启动时启动会很好吗?在我将此行添加到清单之前它起作用了。谢谢你。

4

1 回答 1

0

好的,我通过在安装时在 ProgramData 文件夹中创建我要写入的文件夹解决了这个问题。我使用了 Visual Studio 安装项目,现在我可以写入 /ProgramData/ProgramName/ 文件夹。谢谢您的帮助。

“在提升时设置您要在安装时写入的权限。然后当您的程序运行时,您不需要提升”

于 2017-06-28T15:37:30.443 回答