我有一个MFC应用程序,现在需要管理权限才能从标准用户帐户安装。应用程序当前使用注册表的HKEY_LOCAL_MACHINE并默认安装在程序文件中。我想以这样的方式更改它,以便任何帐户,即使没有管理密码也可以在没有管理员权限的情况下安装它。 我的清单文件目前是这样的:
<ms_asmv2:trustInfo xmlns:ms_asmv2="urn:schemas-microsoft-com:asm.v2">
<ms_asmv2:security>
<ms_asmv2:requestedPrivileges>
<ms_asmv2:requestedExecutionLevel
level="highestAvailable"
uiAccess="false"/>
</ms_asmv2:requestedPrivileges>
</ms_asmv2:security>
我该怎么做才能确保获得理想的结果?我想把注册表项转移到HKEY_CURRENT_USER。有必要吗?请帮助。
答案 0 :(得分:0)
您应该遵循 Chrome 使用的模型:
请勿安装在程序文件。
中
Chrome会在 per-user APPDATALOCAL
文件夹中自行安装,例如:
C:\Users\DJ\AppData\Local\DjSoftwidget
这样每个用户都可以在不需要管理权限的情况下安装应用程序。有了这个,您可以将安装程序显示为requestedExecutionLevel
的{{1}}。