我正在处理的 MSI 部署遇到问题(使用安装盾 http://en.wikipedia.org/wiki/InstallShield)。我们有一个在后台运行的程序,需要按用户运行,并且需要自动启动,无需用户干预。
问题在于组策略对象 http://en.wikipedia.org/wiki/Group_Policy#Operation/活动目录 http://en.wikipedia.org/wiki/Active_Directory(GPO/AD) 部署应用程序在任何人登录之前在 SYSTEM 上下文中启动,而不是以即将登录的用户身份启动。该应用程序每个用户只能运行一次,并且 SYSTEM 进程似乎阻止了 USER过程从开始。这意味着电脑需要重新启动两次才能将软件部署给用户。我们如何阻止这种情况?
目前的工作流程基本上是:
- 安装/升级运行...杀死后台应用程序
- 安装新文件
- 启动后台应用程序
这适用于已发布的应用程序和交互式MSI http://en.wikipedia.org/wiki/Windows_Installer安装 - 只有“指定”的应用程序似乎有问题。因为步骤 3 发生在系统上下文中而不是用户上下文中:(
理想情况下,我会让开发团队修补 EXE 文件以防止在系统上下文中启动,但这需要一个发布周期,我正在寻找一个基于安装程序的临时解决方案。
(我不知道Installscript...所以我猜VBScript http://en.wikipedia.org/wiki/VBScript如果没有我可以使用的原生 InstallShield 东西,这可能是可行的方法。)
您可以使用登录用户 http://msdn.microsoft.com/en-us/library/aa369780(VS.85).aspxWindows Installer 的属性作为启动 EXE 操作的条件。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)