gpt4 book ai didi

wix - 在不同的上下文中以普通用户身份从 MSI (wix) 执行进程

转载 作者:行者123 更新时间:2023-12-01 04:34:26 24 4
gpt4 key购买 nike

我正在尝试为公司内部使用的某些软件配置安装程序。

安装程序通过 SMS 推送到目标机器,并执行以下步骤:

  1. 终止任何当前正在运行的应用程序实例(该应用程序是一个实用程序,因此这不会对用户产生影响)。
  2. 删除以前的版本。
  3. 安装更新版本。

我们希望它做的是在第 3 步完成后启动已安装的可执行文件(作为当前登录的用户,而不是运行 SMS 作业的系统帐户)。

我试过如下添加自定义操作:

<CustomAction Id="Relaunch" Impersonate="yes" Return="asyncNoWait" FileKey="AppExeFile" Execute="commit" ExeCommand="acm" />

InstallExecuteSequence 元素中,我有以下内容:

<Custom Action="Relaunch" OnExit="success" />

然而,当我们尝试此操作时,无论是作为 SMS 作业还是作为管理员执行,都没有任何反应(例如,应用程序没有重新启动)。

有什么建议吗?

最佳答案

我想出的解决方案是在登录时使用 Run 注册表项启动我们的实用程序,如果当前用户是“SYSTEM”则防止在安装期间启动该实用程序 - 这不是专门针对 SMS,而是使用AD/GPO 部署。然而,我们的一些客户正在使用 SMS,这是对他们有用的解决方案。

Vista/Server 2008 UAC 的类似问题,我想出的唯一可靠解决方案是安排重新启动,以便在用户重新登录时在正确的用户上下文下启动该实用程序。

我做了相当多的研究并查看了 MSI 文档,似乎不太可能降低以其他用户身份启动后台实用程序的权限。

关于wix - 在不同的上下文中以普通用户身份从 MSI (wix) 执行进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/406133/

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