InnoSetup用来打包安装程序相当好用。现在记录一下使用过程中遇到的小问题和解决方法。
ISTool
这是一个很好用的工具,能够利用界面自动解决大部分IS需要手写的功能。调用DLL
如果在安装过程中需要调用一些方法,可以封装在DLL里面,然后在脚本中调用(因为本身IS就是一个可以调用Pascal的工具啦)
例如我有一个安装包需要检查安装环境,支持某个功能就用某个版本的dll,否则用低版本的代替。
检查脚本就可以这么写
function COM_SSE:Boolean;
external 'COM_SSE_SUPPORT@files:SetupCommon.dll';
function CheckComSSE:Boolean;
begin
Result := not COM_SSE;
end;
然后文件利用check来检查
Source: File\bin\demo.dll; DestDir: {app}\bin; DestName:d.dll; Check:SSE
这样,当环境检测不符合时,就用这个demo.dll代替了d.dll啦!
TBC