Innosetup中将bat文件压缩到压缩包中

 

有时候在安装的过程中需要调用某些文件(bat或者exe等文件),但是只需要使用一次,然后就可以删掉该文件,

在Innosetup中应该这样操作:

1.在.iss脚本的[Files]章节写下:

Source: ..\fileName.exe ; DestDir: {tmp}; Flags:deleteafterinstall

注意:

Source 是Innosetup关键字;

..\fileName.exe 其中fileName.exe为所要压缩的文件,..\指当前工作目录;

DestDir: {tmp} 表示该文件在安装时会解压到系统的temp目录下;

Flags:deleteafterinstall 表示该文件在安装完成后会被删除

2. 通过ExtractTemporaryFile()方法来获取该文件,

ExtractTemporaryFile('fileName.exe');
      fullPath := ExpandConstant('{tmp}\fileName.exe');
      Exec(fullPath, '', '', SW_HIDE, ewWaitUntilTerminated, ResultCode);

注意:
      ExtractTemporaryFile('fileName.exe') 表示从系统的temp临时目录中获取该文件的操作句柄

(简单来说,就是要调用一下该方法才能使用该文件)

fullPath := ExpandConstant('{tmp}\fileName.exe') 获取该文件解压后的真实路径,

其中{tmp}是Innosetup定义的,对应Windows系统的temp目录

Exec(fullPath, '', '', SW_HIDE, ewWaitUntilTerminated, ResultCode) 其中Exec()方法是Innosetup中的方法,类似于在cmd中执行命令

上一篇:Reader 与 Guava MultiReader


下一篇:SWD接口:探索&泄密&延伸