2011-07-13 125 views
0

我们有一个自定义安装引擎(用C#编写),需要在重新引导后继续安装,因为.NET Framework 4.0安装程序需要这样做。重新启动后重新启动

RunOnce注册表项无法使用,因为Windows会阻止需要管理员权限的应用程序。当我们使用Run Key时,会弹出一个气球消息,指出窗口已经阻止了应用程序。我们点击气球可以启动应用程序,但不适用于业务应用程序。

有没有其他方法可以解决这个问题?

//编辑:RunOnce重点工作,但你必须确保它是根据当前用户的HKEY_CURRENT_USER创建。

非常感谢, 西蒙

+1

您能解释*为Windows阻止需要管理员权限的应用程序*吗?您的设置应该以管理员身份运行,访问RunOnce密钥时应该没有问题(这是安装程序使用的正确密钥)。 – slugster

+0

RunOnce键似乎工作。我认为查看此事的测试人员在HKEY_LOCAL_MACHINE下创建了密钥,因为RunOnce密钥仅在程序有权从条目中删除自己的权限时才执行,所以无法运行。 (当使用标准用户帐户登录时使用HKEY_LOCAL_MACHINE时,情况并非如此)。谢谢! – Simon

回答

3

RunOnce键似乎工作。我认为查看此事的测试人员在HKEY_LOCAL_MACHINE下创建了密钥,但这并不起作用,因为RunOnce密钥只有在程序有权从条目中删除时才能执行。 (当使用标准用户帐户登录时,使用HKEY_LOCAL_MACHINE时情况并非如此)。谢谢!

0

如果您不能访问注册表以任何理由,你可以创建在启动文件夹中设置的快捷方式,并为您设置完成后尽快将其删除(你不希望它在下一次重新启动时运行)。