[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文件的程序的更多相关文章

  1. 使用Inno Setup 打包.NET程序,并自动安装.Net Framework

    使用Inno Setup 打包.NET程序,并自动安装.Net Framework http://www.cnblogs.com/xiaogangqq123/archive/2012/03/19/24 ...

  2. Inno Setup打包的程序提升为管理员权限

    Inno Setup打包的程序在Win7 64位系统上安装,安装步骤最后一步若选中运行程序,会跳出一个错误提示框. 这是因为64位win7系统运行程序时需要管理员权限,而打包的文件并没有这个权限就试图 ...

  3. inno setup 打包exe程序

    inno setup 用于打包生成安装程序, 是通过的一个脚本 可以将 exe 执行文件以安装的形式,解压,添加依赖,创建快捷方式. 例如,我们写了个winform,我们怎么通过安装的形式,给客户的机 ...

  4. Inno Setup 打包的文件以管理员权限执行

    最近发现一个问题,就是Inno Setup打包的程序安装完毕后执行需求管理员权限的程序的时候会失败( inno createprocess   须要提升),解决问题的最简单办法就是打包的后的程序也以管 ...

  5. 【程序打包工具 Inno Setup】CreateProcess 失败:代码 740(Inno Setup打包的程序提升为管理员权限)

    原文参考 https://www.cnblogs.com/SnailProgramer/p/4243666.html http://blog.csdn.net/x356982611/article/d ...

  6. Inno Setup CreateProcess 失败:代码 740(Inno Setup打包的程序提升为管理员权限)

    原文参考 https://www.cnblogs.com/SnailProgramer/p/4243666.html http://blog.csdn.net/x356982611/article/d ...

  7. (Inno setup打包)检测系统是否已安装程序,若已安装则弹出卸载提示的代码

    原文 http://bbs.itiankong.com/thread-30983-1-5.html 有6天没研究pascal代码了,昨天晚上突然来了灵感,终于解决了苦思冥想好几天没能解决的问题, 因此 ...

  8. Inno Setup 打包工具总结

    Inno Setup 打包工具总结 分类: Install Setup 2013-02-02 15:44 2386人阅读 评论(0) 收藏 举报 最近打包用到了Inno setup,在这个过程中容易犯 ...

  9. 在Unicode版Inno Setup中使用ISSkin给安装程序添加皮肤

    原文 http://www.cnblogs.com/2356/archive/2009/10/27/1590565.html 在Unicode版Inno Setup中使用ISSkin给安装程序添加皮肤 ...

随机推荐

  1. GUI开发:实时显示摄像头图像

    import tkinter as tk from PIL import Image, ImageTk import cv2 import numpy as np import time g_exit ...

  2. SharePoint Framework 在web部件中使用第三方样式 - 将第三方样式打到包中

    博客地址:http://blog.csdn.net/FoxDave 有许多第三方库可以帮助我们构建丰富的SharePoint Framework客户端web部件.并且这些JavaScript脚本常常包 ...

  3. 目标检测(二) SPPNet

    引言 先简单回顾一下R-CNN的问题,每张图片,通过 Selective Search 选择2000个建议框,通过变形,利用CNN提取特征,这是非常耗时的,而且,形变必然导致信息失真,最终影响模型的性 ...

  4. redis总结(一)的持久化的取舍和选择以及作用

    1.redis持久化 在客户端发布save的过程中有可能造成阻塞,如一千万条数据同时保存并生成二进制RDB文件的时候,此时就会延迟堵塞. 文件策略是如果存在老的RDB文件,会用新的文件替代老的文件如下 ...

  5. Python 函数的描述

    函数 函数是带名字的代码块,用于完成具体的工作. 要执行函数定义的特定任务,可调用该函数.需要在程序中多次执行同一项任务时,你无需反复编写完成该任务的代码,而只需调用执行该任务的函数,让Python运 ...

  6. c#多线程thread实例详解

    1. Thread线程启动 由于ThreadStart是一个委托,所以可以简化写法 static void Main(string[] args) { Console.WriteLine(" ...

  7. 【Linux】【Kernel】一个简单的内核模块例子

    1.本地主机的参数 zhangjun@zhangjun-virtual-machine:~$ uname -a Linux zhangjun-virtual-machine 4.4.0-31-gene ...

  8. ajax成功返回结果字符串,对比不成功的解决办法

    这是很久之前遇到的问题了,今天不小心又遇到了,总结了一下以前处理的办法. 废话不说,上代码: $.ajax({ url:"exit.do", data:{account:accou ...

  9. AI五子棋需求规格说明书

    AI-Gobang AI五子棋小程序 github地址:https://github.com/holidaysss/AI-Gobang 程序简介 AlphaGo Zero在世界舞台上取得的巨大成功体现 ...

  10. 自定义EL函数(以将字母转为大写为例)

    Step1 定义一个类:StringFunction.java 主要作用是来提供转大写的方法; public class StringFunction { public static String t ...