我编写了一个应在Windows启动时启动的应用程序。我在HKCU \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Run中的Windows注册中添加了一个条目。条目已成功添加,但是程序无法正常启动。

我已经在Windows 7 64位上测试了应用程序。
应用程序需要具有管理员权限才能运行,也许这就是为什么它无法启动的原因?

我还看到条目的值不在引号中,而其他值在引号中。它是强制性的吗?

这是我的C#代码:

            var registry = Registry.CurrentUser;
            var key = registry.OpenSubKey(runKeyBase, true);
            key.SetValue(KEY, directory + @"\" + filename);
            Registry.CurrentUser.Flush();


我怎么不能使它工作?

最佳答案

据我所知,这是由于用户访问控制设置所致,该设置仅允许已签名的应用程序启动,否则它将要求管理员权限。

因此,在启动过程中,即使您已完成注册表设置,OS也不会运行该应用程序。

另外,报价不是强制性的。您可以选择是否拥有它们。

我的方法是在“启动”文件夹中放置一个快捷方式。注册表设置将不起作用。

此外,您可以尝试的一件事是将文件放在/ system32或/ windows中,然后尝试在注册表中进行设置。

09-10 02:12
查看更多