上个月(2016年3月)我正在使用.NET Installer Class
属性设置为Yes
的组件构建InstallShield 2015项目,一切似乎都运行良好。本月我在运行相同安装时突然开始收到错误1001。看到错误来自此.NET Installer Class
组件,我决定关闭.NET Installer Class
属性作为测试。确实可以解决问题。但我们有另一个构建系统,我们可以在其中构建完全相同的代码,并且一切仍然有效,这表明存在环境问题。
经过一些额外的研究后,我发现文件_isconfig.xml
显示了两个系统之间supportedRuntime
version
属性的不同值,我认为这是一个密切相关的指标。问题。其他研究表明,此版本可能来自InstallUtilLib.dll
,它确实与我在_isconfig.xml
上看到的两个系统上的版本相匹配。安装适用于<supportedRuntime version="v4.0.30319"/>
,并且失败并显示<supportedRuntime version="v4.6.1055"/>
。顺便说一下,较新的InstallUtilLib.dll
的日期是2015-11-05,所以我想这个问题理论上可能是自那个日期以来任何更新的结果。
我看到我的系统最近安装了一些.NET Framework更新,但是当我在Google上搜索影响InstallUtilLib.dll
的Microsoft更新时,我却空手而归。那么如何确定这个问题以确定原因和/或解决方案呢?
MSI日志报告错误如下:
MSI (s) (58:14) [14:17:27:958]: Executing op: CustomActionSchedule(Action=_1A0C0EC89595D04ACFD3852EF29B12BD.install,ActionType=3073,Source=BinaryData,Target=ManagedInstall,CustomActionData=/installtype=notransaction /action=install /LogFile= "M:\MfgSys\System\FourthShift.SDKAdministrator.dll" "C:\Users\bmarty\AppData\Local\Temp\{C449BDEA-AA73-4FDE-A6AF-9116E1D7DEBB}\_isconfig.xml")
MSI (s) (58:20) [14:17:27:973]: Invoking remote custom action. DLL: C:\windows\Installer\MSI7282.tmp, Entrypoint: ManagedInstall
Error 1001.
答案 0 :(得分:1)
您已正确诊断出问题的直接原因。其余部分是由于InstallShield使用了它所指向的框架的错误版本。 (我相信旧版本它错误地使用了文件版本而不是CLR版本。)以下是我看到它们的选项: