InstallShield中如何调用批处理文件

InstallShield中如何调用批处理文件

在InstallShield中调用批处理文件其实是安装打包中很常用的一种手段,通过批处理启动服务,进行数据库初始配置等等。

 

在实际操作中,针对不同工程类型,对批处理的调用还是有很多疑惑困扰着大家,撰写此文希望能帮助到那些被困扰的打包开发人员。

这里假设我们的需求是要启动安装路径下的批处理文件Sample.bat。

 

InstallScript工程

这种类型调用批处理相对简单,通过LaunchAppAndWait函数进行调用,下面是简单示例:

 

szProgram = TARGETDIR ^ " sample.bat " ;
szParam = "" ;
LaunchAppAndWait (szProgram, szParam, LAAW_OPTION_WAIT | LAAW_OPTION_HIDDEN );


Basic MSI工程

MSI工程中对于批处理的调用较复杂,我们逐步说明如何操作:

 

    1. 通过Custom Action Wizard添加一个CA,启动向导
    2. 在Basic Information界面中为CA命名
    3. 在Action Type界面中指定Type为Launch an Executable;Location选择Stored in the Directory table
    4. 在Action Parameters界面中,Source选择INSTALLDIR,Target中输入内容:"[SystemFolder]cmd.exe" /c "[INSTALLDIR]Sample.bat"
    5. Additional Options界面默认
    6. 在Respond Options界面中,In-Script Execution选择Deferred Execution
    7. 在Insert into Sequence界面中,将CA插入到InstallFinalize之前,并设定Install Execute Condition为:Not Installed
    8. 其余默认

你可能感兴趣的:(InstallShield中如何调用批处理文件)