我正在使用 InstallShield 2012 Spring Express。我终于发现,在我的应用程序安装过程中,如果我将其“In-Script Execution”属性设置为“Deferred Execution In System”,我可以使用提升的进程 EXE(应用程序清单设置为“requireAdministrator”)运行自定义操作语境。”
那很好。
但现在我必须能够在卸载过程中做同样的事情。到目前为止,即使在 InstallShield 2012 Spring Express 的付费版本上,我也无法让它工作。
首先,对于“卸载期间的自定义操作”部分,只有“系统更改之前”和“系统更改后”两个条目。
我没有尝试将我的自定义操作添加到“系统更改之后”,因为我需要运行的 EXE 是我的包的一部分(因此到那时会被删除。)所以我将它添加到“系统更改之前” 。” 现在由于某种原因,当我将它添加到“系统更改之前”时,没有“脚本内执行”选项。而且因为我没有这个选项,所以当我的卸载尝试运行提升的进程 EXE 时,它会失败并出现错误 1721...这与我在安装过程中遇到的错误完全相同,直到我更改了“在-Script Execution”选项改为“Deferred Execution In System Context”。
那么,如何在卸载过程中让提升的进程 EXE 正确运行?InstallShield 是否无法正确处理此问题?
谢谢,JP