我补充说:
RegistryKey rkApp = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);
rkApp.SetValue("My Application", Application.ExecutablePath.ToString());
但是我的应用程序没有在启动时运行,我也设置了:
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
app.manifest中的
我的注册表:
答案 0 :(得分:0)
当有人回答这个问题时,有点奇怪。
Application.ExecutablePath在某些情况下会返回不正确的结果,其中一个是路径中的“#”符号。
更改
rkApp.SetValue("My Application", Application.ExecutablePath.ToString());
要
rkApp.SetValue("My Application", Application.StartupPath + @"\" + Process.GetCurrentProcess().ProcessName + ".exe");
另请记住,如果存在,请更改所有剩余路径。