我已经看到了许多自动化我的 InstallShield 构建的解决方案,但我都遇到了每个问题。我正在使用 InstallShield Professional 2013。对于这个冗长的问题,我很抱歉,但我对解决我的问题的方向一无所知。
1) IsCmdBld.exe - 我有一个脚本可以运行并将构建我的安装程序。但是,当安装程序运行时,我收到一条错误消息,上面写着"The System Administrator has set policies to prevent this installation"
. 我不确定为什么会发生这种情况,但如果我通过设计器构建安装程序,我不会收到相同的错误消息。编辑:这是我的命令(%guid% 是我生成的用于设置产品代码的 Guid):
for /f %%i in ('"C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\uuidgen.exe"') do set guid=%%i
"C:\Program Files (x86)\InstallShield\2013 SP1 SAB\System\ISCmdBld.exe" -p "MyInstaller.ism" -r SingleImage -y "1.0.0.13" -z ProductCode=%guid%
2) InstallShield 自动化接口- 我已经关注了许多关于此的示例和教程,但都以相同的结果结束。当我调用以下代码时:
var project = new ISWiAuto20.ISWiProject();
我收到此错误:
Unable to cast COM object of type 'System.__ComObject' to interface type
'ISWiAuto20.ISWiProject'. This operation failed because the QueryInterface call
on the COM component for the interface with IID '{872D23A7-C18D-468C-895D-1CF027E4FBB1}'
failed due to the following error: Library not registered.
(Exception from HRESULT: 0x8002801D (TYPE_E_LIBNOTREGISTERED)).
3) MsBuild.exe - 在我的 InstallShield 项目文件上运行 MsBuild 会产生此错误:
error NSB4025: The project file could not be loaded. Invalid character in the
given encoding. Line 1, position 1