从标准用户帐户安装应用程序

时间:2013-09-20 12:44:23

标签: manifest uac administrator

我有一个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。有必要吗?请帮助。

1 个答案:

答案 0 :(得分:0)

您应该遵循 Chrome 使用的模型:

  

请勿安装在程序文件

Chrome会在 per-user APPDATALOCAL文件夹中自行安装,例如:

C:\Users\DJ\AppData\Local\DjSoftwidget

这样每个用户都可以在不需要管理权限的情况下安装应用程序。有了这个,您可以将安装程序显示为requestedExecutionLevel的{​​{1}}。