InstallShield - 需要在管理员模式下运行自定义操作 .exe

7
使用InstallShield中的自定义操作,我正在尝试在安装过程中运行一个.exe文件来注册第三方服务。.exe需要以管理员模式运行。这将在UI模式或静默模式下运行。这是一组第三方文件,通过我们的安装程序部署,但我需要在过程中执行其中一个。
我已经尝试从“Install Exec Sequence”“After Install Files”(也尝试过“After Publish Features”)执行它。在这种情况下,我收到以下对话框:
我还尝试了从“Admin Exec Sequence”“After InstallFiles”中执行它,但似乎根本没有运行。程序会安装,但我需要手动运行命令才能使它正常工作。
我还将In-Script执行设置为“Deferred Execution”,并将Return Processing设置为“Synchronous(Check exit code)”。
所以,我需要一些关于应该在哪里执行它的指导? Install Exec Sequence?Admin Exec Sequence? 在哪个阶段之后? 程序何时被写出并可以执行?
1个回答

12

我已经解决了这个问题。关键在于将值设置为“系统上下文中的延迟执行”。如果只设置为“延迟执行”,它将在用户模式下运行。

输入图像描述

此外,在这种情况下不会调用“Admin Exec Sequence”。需要使用 /a 运行.msi文件以运行此路径。这对管理员管理多台机器的安装非常有用。(Microsoft 的说明


3
请注意,计划在系统上下文中进行延迟执行的操作需要放置在安装执行序列中的InstallInitialize之后[来源]。它们将以完整权限运行,但无法访问大多数MSI属性。您可以通过特殊属性CustomActionData向它们传递所需的信息[来源]。 - Agostino

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接