Inno Setup打包带有MSI文件的程序
[Setup]
; 注: AppId的值为单独标识该应用程序。
; 不要为其他安装程序使用相同的AppId值。
; (生成新的GUID,点击 工具|在IDE中生成GUID。)
AppId={{47A165D0-6237-4B7D-915E-4C3779A70F93}
AppName={#MyAppName}
AppVersion={#MyAppVersion}
;AppVerName={#MyAppName} {#MyAppVersion}
AppPublisher={#MyAppPublisher}
AppPublisherURL={#MyAppURL}
AppSupportURL={#MyAppURL}
AppUpdatesURL={#MyAppURL}
DefaultDirName={pf}\{#MyAppName}
DisableProgramGroupPage=yes
OutputBaseFilename=DataOutSetup
Compression=lzma
SolidCompression=yes
PrivilegesRequired=admin [Languages]
Name: "chinesesimp"; MessagesFile: "compiler:Default.isl" [Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked [Types]
Name: full; Description: Full installation
Name: custom; Description: Custom installation; Flags: iscustom [Components]
Name: MainApp; Description: 主程序文件; Types: full custom; Flags: fixed
Name: VCDll; Description: VC++运行库; Types: full custom [Files]
Source: "C:\Documents and Settings\Administrator\桌面\\vccrt8_Win32.msi"; DestDir: "{app}"; Flags: ignoreversion; Components: VCDll; AfterInstall: MyAfterInstall
Source: "C:\Documents and Settings\Administrator\桌面\\MyApp.exe"; DestDir: "{app}"; Flags: ignoreversion; Components: MainApp
Source: "C:\Documents and Settings\Administrator\桌面\\config.ini"; DestDir: "{app}"; Flags: ignoreversion; Components: MainApp
Source: "C:\Documents and Settings\Administrator\桌面\\fbclient.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: MainApp
Source: "C:\Documents and Settings\Administrator\桌面\\ib_util.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: MainApp
Source: "C:\Documents and Settings\Administrator\桌面\\icudt30.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: MainApp
Source: "C:\Documents and Settings\Administrator\桌面\\icuin30.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: MainApp
Source: "C:\Documents and Settings\Administrator\桌面\\icuuc30.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: MainApp
Source: "C:\Documents and Settings\Administrator\桌面\\ABCDB.DAT"; DestDir: "{app}"; Flags: ignoreversion; Components: MainApp
Source: "C:\Documents and Settings\Administrator\桌面\\msvcp80.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: MainApp
Source: "C:\Documents and Settings\Administrator\桌面\\msvcr80.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: MainApp
; 注意: 不要在任何共享系统文件上使用“Flags: ignoreversion” [Icons]
Name: "{commonprograms}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"
Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon [Run]
;Filename: "msiexec.exe"; Parameters: "/i ""{app}\vccrt8_Win32.msi"" /quiet";Description:"安装动态库"; StatusMsg:"正在安装必须的文件"
Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent [CODE]
procedure MyAfterInstall;
var
RetCode: integer;
begin
ShellExec('open', ExpandConstant('{app}\vccrt8_Win32.msi'), '', '', SW_SHOWNORMAL, ewWaitUntilTerminated, RetCode);
if RetCode <> then
MsgBox(SysErrorMessage(RetCode), mbInformation, MB_OK);
end;
不知道为什么Exec不成功,必须用ShellExec才可以。
另外,在[Run]下注释的方法也是可行的,但
Inno Setup打包带有MSI文件的程序的更多相关文章
- 使用Inno Setup 打包.NET程序,并自动安装.Net Framework
使用Inno Setup 打包.NET程序,并自动安装.Net Framework http://www.cnblogs.com/xiaogangqq123/archive/2012/03/19/24 ...
- Inno Setup打包的程序提升为管理员权限
Inno Setup打包的程序在Win7 64位系统上安装,安装步骤最后一步若选中运行程序,会跳出一个错误提示框. 这是因为64位win7系统运行程序时需要管理员权限,而打包的文件并没有这个权限就试图 ...
- inno setup 打包exe程序
inno setup 用于打包生成安装程序, 是通过的一个脚本 可以将 exe 执行文件以安装的形式,解压,添加依赖,创建快捷方式. 例如,我们写了个winform,我们怎么通过安装的形式,给客户的机 ...
- Inno Setup 打包的文件以管理员权限执行
最近发现一个问题,就是Inno Setup打包的程序安装完毕后执行需求管理员权限的程序的时候会失败( inno createprocess 须要提升),解决问题的最简单办法就是打包的后的程序也以管 ...
- 【程序打包工具 Inno Setup】CreateProcess 失败:代码 740(Inno Setup打包的程序提升为管理员权限)
原文参考 https://www.cnblogs.com/SnailProgramer/p/4243666.html http://blog.csdn.net/x356982611/article/d ...
- Inno Setup CreateProcess 失败:代码 740(Inno Setup打包的程序提升为管理员权限)
原文参考 https://www.cnblogs.com/SnailProgramer/p/4243666.html http://blog.csdn.net/x356982611/article/d ...
- (Inno setup打包)检测系统是否已安装程序,若已安装则弹出卸载提示的代码
原文 http://bbs.itiankong.com/thread-30983-1-5.html 有6天没研究pascal代码了,昨天晚上突然来了灵感,终于解决了苦思冥想好几天没能解决的问题, 因此 ...
- Inno Setup 打包工具总结
Inno Setup 打包工具总结 分类: Install Setup 2013-02-02 15:44 2386人阅读 评论(0) 收藏 举报 最近打包用到了Inno setup,在这个过程中容易犯 ...
- 在Unicode版Inno Setup中使用ISSkin给安装程序添加皮肤
原文 http://www.cnblogs.com/2356/archive/2009/10/27/1590565.html 在Unicode版Inno Setup中使用ISSkin给安装程序添加皮肤 ...
随机推荐
- java的重写
重写是子类对父类的允许访问的方法的实现过程进行重新编写, 返回值和形参都不能改变.即外壳不变,核心重写! 重写的好处在于子类可以根据需要,定义特定于自己的行为. 也就是说子类能够根据需要实现父类的方法 ...
- Shell 使用 expr 进行数学运算
1.语法格式: 第一种:expr $num1 operator $num2 第二种:$(($num1 operator $num2)) 2.expr 操作符: 注意:这里比较为true,返回 1.只支 ...
- NOIP2007奖学金题解——洛谷1093
题目描述 某小学最近得到了一笔赞助,打算拿出其中一部分为学习成绩优秀的前5名学生发奖学金.期末,每个学生都有3门课的成绩:语文.数学.英语.先按总分从高到低排序,如果两个同学总分相同,再按语文成绩从高 ...
- python学习-迭代器,列表解析和列表生成式
迭代器为类序列对象提供了一个类序列的接口.Python 的迭代无缝的支持序列对象,而且还允许程序猿迭代非序列类型,包括用户定义的对象. 迭代器是一个next()方法的对象,而不是通过索引计数.当需要下 ...
- 运维chroot语法
chroot命令 chroot命令用来在指定的根目录下运行指令.chroot,即 change root directory (更改 root 目录).在 linux 系统中,系统默认的目录结构都是以 ...
- 关于cordova+vue打包apk文件无法访问数据接口
作为一个cordova小白,我按照官方文档和网上资料完成了讲vue文件打包到cordova中并打包成apk文件,完成了一个简单app的制作,当我正陶醉于可以自己完成一个app的时候突然发现,我的app ...
- topological sort
A topological sortof a dag G is a linear ordering of all its vertices such that if G contains anedg ...
- 配置trunk
SW1 Switch>en Switch#conf t Enter configuration commands, one per line. End with CNTL/Z. Switch(c ...
- 关于grub修复引导系统
这周末遇到停电,机房的一台数据服务器启动不了,开机硬件自检以后,就停留在一个黑屏状态左上角有光标闪烁,却一直进入不了系统. 还好手里有centos6.5的系统盘,进入修复选项,具体进入修复请参照这里 ...
- ImageUtil
package com.rscode.credits.util; import java.io.File; import java.io.IOException; import java.util.A ...