4

当我的基本MSI安装试图在Windows上运行自定义操作可执行文件时,我在Windows 8上收到错误1721   XP和Windows   7它以我已将它设置为InstallShield。可执行文件存储在二进制表中。这是为什么发生?使用InstallShield 2010的Windows 8上的MSI自定义操作错误1721

Screenshot with the error message containing error 1721: "DJPro Automations Installer Information. Error 1721. There is a problem with this Windows Installer package. A program required for this install to complete could not be run. Contact your support personnel or package vendor. Action: Initializer, location: C:\Windows...\MSID974.tmp, command:"

+0

通常情况下,详细MSI日志会给你为什么显示错误1721一个更清晰的认识。可能的候选人包括缺少依赖关系和所需的高程。 –

+1

这可能是因为我已经将可执行文件设置为始终以'app.manifest'中的管理员身份运行。问题是我需要从Program Files的软件的先前版本安装中移动一些文件,所以我需要管理员权限才能这样做。当我没有设置可执行文件以管理员身份运行时,错误没有出现,但在尝试移动文件时出现'UnauthorizedAccessException'。 – Pantelis

回答

0

这似乎是最初的架构有关。确保自定义操作的所有部分,程序,路径和文件名等均有效。同样如上所述,始终通过管理员帐户应用安装程序。

如果您正在调用存储在二进制表中的EXE,请确保您也正确引用它。通常Windows安装程序会将MSI解包到'%temp%'文件夹,以确认访问和路径是否正确。 MSIEXEC会提取临时文件,例如“MSID974.tmp”,然后执行预先配置的MSI功能,但会失败。

最后,请尝试生成详细的MSI日志文件。它将帮助您更清楚地指出问题。

1

以管理员身份运行。它会做的。我有同样的问题,并通过这样做得到解决。

0

变化,脚本执行“在系统上下文延迟执行”的自定义操作

相关问题