直接用bat命令对Inno Setup的脚本文件.iss进行编译

流程:

  1. 新建文本文档,将.txt改为.bat
  2. 在文本中输入一下文本,其中Compil32是Innosetup的编译器文件;
compil32 /cc "x.iss"
compil32 /cc "y.iss"
compil32 /cc "z.iss"

  3. 保存;

在这个过程中,点击bat文件,闪一下退出,在bat文档的末尾加入pause后在控制台输出中显示“compil32不是内部外部命令...”信息,查找百度发现是compil32的路径没有添加到系统变量中,导致bat文件执行时找不到compil32.

解决方法是:

1、在桌面找到“计算机”图标并点击鼠标右键,并在弹出菜单中选择“属性”;

win8命令提示符cmd命令失效(不是内部或外部命令)怎么办


2、点击左侧的“高级系统设置”;

win8命令提示符cmd命令失效(不是内部或外部命令)怎么办


3、在弹出的系统属性对话框中,点击“环境变量”按钮;

win8命令提示符cmd命令失效(不是内部或外部命令)怎么办


4、找到变量“Path”,并点击“编辑”按钮;

win8命令提示符cmd命令失效(不是内部或外部命令)怎么办


5、添加变量值为“C:\Program Files (x86)\Inno Setup 5\”,最后点击“确定”按钮结束设置;

win8命令提示符cmd命令失效(不是内部或外部命令)怎么办

点击bat,成功运行。
命令行编译器执行

脚本也可以由命令行的安装编译器编译。命令行使用如下:

compil32 /cc <script name>

例子

compil32 /cc "c:\isetup\samples\my script.iss"

如上面的例子所示,包括空间的文件名必须用引号括起来。

在命令行中运行安装编译器不会抑制正常进度显示或任何错误消息。如果编译成功,设置编译器将返回一个0的退出代码,如果命令行参数无效,或2如果编译失败,则返回1。

或者,您可以编写脚本使用控制台模式编译,iscc.exe。命令行使用如下:

iscc [options] <script name>

或从标准输入读取:

iscc [options] -

例子

iscc "c:\isetup\samples\my script.iss"

如上面的例子所示,包括空间的文件名必须用引号括起来。

可用的选项是:“/o”指定输出路径(重写任何脚本中设置outputdir),“/F”指定输出文件名(重写任何脚本中设置outputbasefilename),“/s”指定一个签名工具,“/Q”安静的编译(只打印错误信息),和“/?”显示帮助屏幕。

例子

iscc /Q /O"My Output" /F"MyProgram-1.0" /Sbyparam=$p "c:\isetup\samples\my script.iss"

如果编译ISCC成功返回的退出代码为0,1如果命令行参数无效或发生内部错误,或2如果编译失败。

可以从命令行启动安装脚本向导。命令行使用如下:

compil32 /向导<向导名称> <脚本名称>
compil32 /wizard <wizard name> <script name>

例子

compil32 /wizard "MyProg Script Wizard" "c:\temp.iss"

如上面的例子所示,向导的名称和文件名中包含空格必须用引号括起来。

在命令行中运行该向导不抑制任何错误消息。
设置脚本向导将返回一个0的退出代码,如果没有错误,
另外它将保存生成的脚本文件到指定的文件名,1如果命令行参数无效,或2,如果生成的脚本文件不能保存。
如果用户取消了设置脚本向导,则返回0的退出代码,并没有保存脚本文件。

猜你喜欢

转载自blog.csdn.net/u012842630/article/details/116464520