1

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

4

1 回答 1

0

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

不要安装在Program Files中。

Chrome 将自身安装在每个用户的 APPDATALOCAL文件夹中,例如:

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

这样每个用户都可以安装应用程序而无需管理权限。有了它,您将显示您的安装程序requestedExecutionLevelasInvoker.

于 2014-01-01T05:56:24.947 回答