Inno Setup的常用脚本
安装不同的目录:
[Files]
Source: "我的程序*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs Source: "我的程序*"; DestDir: {cf}我的程序; Flags: ignoreversion recursesubdirs createallsubdirs
开始菜单快捷方式:?
[Icons] Name: "{group}我的程序名称"; Filename: "{app}我的程序.exe" ;WorkingDir: "{app}"? 桌面快捷方式:? [Icons] Name: "{userdesktop}我的程序名称"; Filename: "{app}我的程序.exe"; WorkingDir: "{app}"? 开始菜单卸载快捷方式:? [Icons] Name: "{group}{cm:UninstallProgram,我的程序}"; Filename: "{uninstallexe}"? 安装完后选择运行:? [Run] Filename: "{app}我的程序.exe"; Description: "{cm:LaunchProgram,我的程序名称}"; Flags: nowait postinstall skipifsilent? 安装完后自动运行:? [Run] Filename: "{app}我的程序.exe";? 在界面左下角加文字:? [Messages] BeveledLabel=你的网站名称? 选择组件安装:(组件1的Flags: fixed为必须安装)? [Types]? Name: "full"; Description: "选择安装"; Flags: iscustom? [Components]? Name: 组件1文件夹; Description: 组件1名称; Types: full; Flags: fixed? Name: 组件2文件夹; Description: 组件2名称; Types: full? Name: 组件3文件夹; Description: 组件3名称; Types: full? [Files]? Source: "E:组件1文件夹我的程序.exe"; DestDir: "{app}"; Flags: ignoreversion? Source: "E:组件1文件夹*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: 组件1文件夹? Source: "E:组件2文件夹*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: 组件2文件夹? Source: "E:组件3文件夹*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: 组件3文件夹? 添加关于按钮:? [Co {注意:关于按钮单击后执行的过程,一定要写在InitializeWizard()过程之前}? procedure ButtonAboutOnClick(Sender: TObject);? begin? MsgBox('关于对话框。'+#13#10+'另起一行',mbInformation,MB_OK);//显示对话框? end;? {初始化安装向导时会触发的过程,这个过程的名字是INNO内部定义的,不能修改}? procedure InitializeWizard();? begin? with TButton.Create(WizardForm) do//在WizardForm上面创建一个按钮? begin? Left := 32;//按钮距WizardForm左边的距离? Top := 302;//按钮距WizardForm上边的距离? Width := WizardForm.CancelButton.Width;//按钮的宽度,这里定义跟'取消'按钮等宽? Height := WizardForm.CancelButton.Height;//按钮的高度? Caption := '关于(&A)...';//按钮上的文字? Font.Name:='宋体';//按钮文字的字体? Font.Size:=9;//9号字体? On Parent := WizardForm;//按钮的父组件,也就是按钮'载体',这里是WizardForm(安装向导窗体)? end;? end;? 设置界面文字颜色:? [Co procedure InitializeWizard();? begin? WizardForm.WELCOMELABEL1.Font.Color:= clGreen;//设置开始安装页面第一段文字的颜色为绿色? WizardForm.WELCOMELABEL2.Font.Color:= clOlive;//设置开始安装页面第二段文字的颜色为橄榄绿? WizardForm.PAGENAMELABEL.Font.Color:= clred;//设置许可协议页面第一段文字的颜色为红色? WizardForm.PAGEDESCRIPTIONLABEL.Font.Color:= clBlue; //设置许可协议页面第二段文字的颜色为蓝色? WizardForm.MainPanel.Color:= clWhite;//设置窗格的颜色为白色? end;? 判断所选安装目录中原版主程序是否存在:
[Co
function NextButtonClick(CurPage: Integer): Boolean;? begin? Result:= true;? if CurPage=wpSelectDir then? if not FileExists(ExpandConstant('{app}主程序.exe')) then? begin? MsgBox('安装目录不正确!',MB_OK );? Result := false;? end;? end;
注:
{app}表示默认安装路径为C:Program Files我的程序
{cf}表示默认安装路径为C:Program FilesCommon Files我的程序
颜色: clBlack(黑色),clMaroon(暗红),clGreen(绿色),clOlive(橄榄绿),clNavy(深蓝),clPurple(紫色),clTeal(深青),clGray(灰色),clSilver(浅灰),clRed(红色),clLime(浅绿),clYellow(黄色),clBlue(蓝色),clFuchsia(紫红),clAqua(青绿),clWhite(白色)。te(白色)。
增加path路径:
[Register]
Root: HKLM; Subkey: "HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerEnvironment"; ValueType: string; ValueName: "Path"; ValueData: "{olddata};{app}"; Flags:uninsdeletekey 0、调用DOS命令或批处理等其它命令行工具等 Exec(ExpandConstant('{cmd}'),'/c dir c: >a.txt',ExpandConstant('{app}'),SW_SHOWNORMAL,ewNoWait,ResultCode); 1、不显示一些特定的安装界面? 如果是自定义的窗体,则PageID可能是100,你可以在curPageChanged(CurPageID: Integer)方法中打印出到curpageid到底是多少。 2、获取SQLserver安装路径 3、获取本机的IP地址 //{083565F8-18F0-4F92-8797-9AD701FCF1BF}视网卡而定见LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionNetworkCards处 4、检查数据库是否安装 5、根据环境变量选择组件,获取系统环境变量值见方法6 6、系统环境变量操作 [co 7、获取NT服务安装路径 Windows服务在系统安装后会在注册表的 "HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices"下 举例获取tomcat6服务安装路径: ------------------------------------------------------------------------ 转载于: ??http://blog.csdn.net/woshinia/article/details/8263692 ? 感谢! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |