gwi*_*003 5 msbuild installshield
我已经看到了许多自动化我的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%
Run Code Online (Sandbox Code Playgroud)
2)InstallShield自动化接口 - 我已经遵循了许多关于此的示例和教程,但都以相同的结果结束.当我调用以下代码时:
var project = new ISWiAuto20.ISWiProject();
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
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)).
Run Code Online (Sandbox Code Playgroud)
3)MsBuild.exe - 在我的InstallShield项目文件上运行MsBuild会产生以下错误:
error NSB4025: The project file could not be loaded. Invalid character in the
given encoding. Line 1, position 1
Run Code Online (Sandbox Code Playgroud)
这些方法之间的选择(当它们全部工作时)在很大程度上取决于您尝试集成的构建系统.如果您使用批处理或makefile方法,IsCmdBld.exe可能是最简单的起点.如果您使用的是Visual Studio和TFS或MSBuild,那么您可能会有更多的运气,因为它会以构建系统可以理解的方式报告错误.(除此之外,它们基本相似.)如果在构建项目之前需要对项目进行调整,自动化层可以增加或替换其他方法.
但在你的情况下,你说他们都不工作.你做了什么来诊断原因?以下是我为这些症状采取的第一步:
C:\Windows\SysWow64\CScript.exe.<InstallShield>\Support\0409\MSBuild.xml到(ProjectName).isproj和调整的内容; 在生成的.isproj文件上调用MSBuild.赔率很高,这与IsCmdBuild的结果大致相同,因为构建部分主要是共享的.| 归档时间: |
|
| 查看次数: |
7792 次 |
| 最近记录: |