gpt4 book ai didi

windows-services - 从依赖于 msi 安装的程序集的 msi 安装程序启动服务

转载 作者:行者123 更新时间:2023-12-04 07:27:11 28 4
gpt4 key购买 nike

我正在使用 WiX 编写 MSI 安装程序以启动依赖于 MSI 安装的 DLL 的服务。在 Vista 上,DLL 被添加到 MSI 的 InstallFinalize 中的全局程序集缓存中阶段,所以我无法使用 WiX 中内置的服务启动命令。那个尝试在 DLL 进入 GAC 之前启动服务,但失败了。解决方案似乎是改用自定义操作 [1],并在 InstallFinalize 之后运行它.

我使用的自定义操作是使用 sc 启动服务.以管理员身份运行安装程序时一切正常,但以普通用户身份运行时不起作用。安装程序将提升实际安装阶段的权限,但会在完成安装并使用 sc 启动服务后放弃这些权限。作为非特权用户将失败。在 InstallFinalize 之后,将自定义操作设置为延迟和不模拟以获取管理员权限将不起作用。 [2].

作为最后的拼凑,我尝试添加 <Condition>Privileged</Condition>到 WiX 文件,告诉用户安装程序需要以管理员身份运行,但我也无法让它工作。 Privileged值在安装过程中设置为 1,可能是在主安装序列被赋予更高权限时。

那么有没有其他人遇到过 Vista、非管理员用户、安装程序需要启动服务和服务需要在安装过程中进入 GAC 才能运行的组合?对此有任何通用的工作方法吗?

[1] http://www.mail-archive.com/wix-users@lists.sourceforge.net/msg09162.html

[2] http://www.mail-archive.com/wix-users@lists.sourceforge.net/msg15381.html

最佳答案

这是最简单的解决方案只是安排重启的时代之一。

关于windows-services - 从依赖于 msi 安装的程序集的 msi 安装程序启动服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1572572/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com