0

我在为 Windows 8 创建 msp (Microsoft Patch) 时遇到问题。

执行我的 msp 无法添加到某些机器上的注册表。如果 msp 是“以管理员身份运行”,一切都很好。但是将“以管理员身份运行”添加到 .msp 扩展名并非易事,并且不被接受为解决方案。

核心问题是这个 msp 有一个自定义操作(一个 exe),它向注册表添加了一些键/值。UAC 避免以系统/管理员权限执行此自定义操作。实际上exe执行但只有exe的某些部分(如更新注册表)不起作用(最好的UAC)!

如何提升自定义操作执行权限?我正在使用基本的 msimsp 来创建补丁。我使用 orca 来修改 msi/msp。

谢谢。

4

1 回答 1

0

这不是 UAC 的问题,而是安装创作不佳的问题。如果您使用注册表表,您将不会遇到此问题。

必须在 InstallInitialize 和 InstallFinalize 之间的安装执行序列中安排自定义操作,并正确提升系统上下文中的 Deferred 选项(无模拟)。

如果安装在广告中作为管理 ( /jm ) 测试并由非特权用户 ( /i ) 安装,则自 Windows 2000 以来就是如此。在 UAC 出现并通过向管理员提供标准用户令牌来强制执行该模式之前,没有人会费心测试这些故事。

于 2013-06-26T23:28:37.863 回答