【问题标题】:What are the root causes for failure of ConfigInstall action?ConfigInstall 操作失败的根本原因是什么?
【发布时间】:2016-04-26 08:58:04
【问题描述】:

我在 InstallShield 中创建了一个 MSI 安装程序。当我尝试在 Windows 2003 Server 上安装此安装程序时,出现以下错误:

动作开始时间 5:04:40:ConfigInstall。
微星 (c) (F0:6C) [05:04:40:579]: 调用远程自定义操作。动态链接库:
C:\DOCUME~1\AD2738~1\LOCALS~1\Temp\2\MSI3.tmp,
入口点:_ConfigInstall@4
MSI (c) (F0:F8) [05:04:40:595]:启用隐形。
MSI (c) (F0:F8) [05:04:40:595]:尝试启用所有禁用 在服务器上调用安装之前的权限
微星 (c) (F0:F8) [05:04:40:595]:连接到 CA 接口的服务。
操作于 5:04:40 结束:ConfigInstall。返回值 3

所以当我搜索这个return code 3时,我知道它是Action的失败。但是我没有得到ConfigInstall 失败的原因。我搜索了很多 ConfigInstall 失败的原因。但我什么也没找到。

那么谁能告诉我这个动作ConfigInstall失败的主要原因是什么?

【问题讨论】:

    标签: windows-installer registry installshield windows-server-2003


    【解决方案1】:

    我在一些快速搜索中没有找到任何内容,这些行表明这是您(或您的团队)或第三方提供的自定义操作:

    MSI (c) (F0:6C) [05:04:40:579]: 调用远程自定义操作。动态链接库:
    C:\DOCUME~1\AD2738~1\LOCALS~1\Temp\2\MSI3.tmp,
    入口点:_ConfigInstall@4

    如果您有源代码,您可以考虑添加日志记录甚至调试。如果没有,您仍然可以尝试使用 Dependency Walker 等工具来验证 DLL 的依赖项在 Windows 2003 Server 上是否可用。 (如果他们不这样做,你必须想办法让他们到达那里,可能通过静态链接它们,可能通过安装它们并在足够晚的时间执行 CA 以使它们存在。)

    请注意,Microsoft 不再支持 2003,因此这可能是您自己放弃对它的支持的好时机。

    【讨论】:

    • 是的,迈克尔。你是对的。这个 customAction 是以前的队友写的。但是这个 CustomAction 失败了,这是序列中第一个条件为“1”的 CA,即始终执行。那么有没有办法在不制作新安装程序的情况下跳过这个 CA?通过某些命令或任何其他方式?
    • 由于该操作不以您可以在命令行上覆盖的内容为条件,因此您必须创建一个转换或构建一个新包。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多