打包可执行程序,检查安装环境
来源:互联网 发布:企业画像 大数据 编辑:程序博客网 时间:2024/06/10 02:51
; 脚本由 Inno Setup 脚本向导 生成!
; 有关创建 Inno Setup 脚本文件的详细资料请查阅帮助文档!
#define MyAppName "我的程序"
#define MyAppVersion "1.5"
#define MyAppPublisher "我的公司"
#define MyAppURL "http://www.baidu.com/"
#define MyAppExeName "ConsoleApplication8.exe"
[Setup]
; 注: AppId的值为单独标识该应用程序。
; 不要为其他安装程序使用相同的AppId值。
; (生成新的GUID,点击 工具|在IDE中生成GUID。)
AppId={{BD7D1785-F7AC-44DA-B58E-CC84DCFB0418}
;程序名
AppName=APP
;版本号
AppVersion=APP 1.0.0
;AppVerName={#MyAppName} {#MyAppVersion}
;发布者名
AppPublisher={#MyAppPublisher}
;相关连接
AppPublisherURL={#MyAppURL}
AppSupportURL={#MyAppURL}
AppUpdatesURL={#MyAppURL}
;默认安装目录
DefaultDirName={pf}\{#MyAppName}
;默认开始菜单名
DefaultGroupName={#MyAppName}
;是否打开->可选安装开始菜单项
;AllowNoIcons=yes
;安装协议
;LicenseFile=C:\Example\原始文件\agreement.txt
;安装前查看的文本文件
InfoBeforeFile=D:\mcWindowsService.txt
;安装后查看文本文件
InfoAfterFile=D:\mcWindowsService.txt
;输出文件夹,安装包生成的文件夹
OutputDir=C:\Users\Administrator\Desktop\我的程序
;输出文件名
OutputBaseFilename=baidu
;安装图标
SetupIconFile=E:\ooopic_1440492260.ico
;安装需要输入密码
;Password=123
;Encryption=yes
;压缩相关
Compression=lzma
SolidCompression=yes
;可以让用户忽略选择语言相关
;ShowLanguageDialog = yes
;备注版本信息
;VersionInfoCompany=HTTP://www.Hkiss.COM
;VersionInfoDescription=ISsample 汉化增强版
;VersionInfoVersion=1.0.0.0
;VersionInfoCopyright=Copyright (C) 2007-2008 Hkiss
;制作选择语言
[Languages]
Name: "chinesesimp"; MessagesFile: "compiler:Default.isl"
;用户定制任务
[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked; OnlyBelowVersion: 0,6.1
;文件安装
[Files]
Source: "E:\ConsoleApplication8\ConsoleApplication8\bin\Release\ConsoleApplication8.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "E:\ConsoleApplication8\ConsoleApplication8\bin\Release\ConsoleApplication8.pdb"; DestDir: "{app}"; Flags: ignoreversion
Source: "E:\ConsoleApplication8\ConsoleApplication8\bin\Release\ConsoleApplication8.vshost.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "E:\ConsoleApplication8\ConsoleApplication8\bin\Release\ConsoleApplication8.vshost.exe.manifest"; DestDir: "{app}"; Flags: ignoreversion
Source: "E:\ConsoleApplication8\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
;启动另外一个程序
Source: "C:\Users\Administrator\Desktop\桌面资料下载\dotNetFx45_Full_setup.exe"; DestDir: "{tmp}"; Flags: ignoreversion
; 注意: 不要在任何共享系统文件上使用“Flags: ignoreversion”
;安装类型设置
;[Types]
;组件安装
;[Components]
;开始菜单,桌面快捷方式
[Icons]
Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"
Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon
;添加一个帮助文挡
;Name: {group}\ISsample 1.0.0.0 帮助文档;Filename: {app}\ISsample.chm
;用来在程序安装完成后 在安装程序显示最终对话框之前执行程序 常用与运行主程序 显示自述文件 删除临时文件
[Run]
Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent
;更改显示在程序中显示的消息文本
;[Messages]
;BeveledLabel=HKiss科技
;卸载对话框说明
;ConfirmUninstall=您真的想要从电脑中卸载ISsample吗?%n%n按 [是] 则完全删除 %1 以及它的所有组件;%n按 [否]则让软件继续留在您的电脑上.
;定义解压说明
;StatusExtractFiles=解压并复制主程序文件及相关库文件...
;用于在用户系统中创建,修改或删除注册表健值
;[Registry]
;Root: HKLM ;SubKey:"Software\ISsample";ValueType:dword;ValueName:config;ValueData:10 ;Flags:uninsdeletevalue
;在执行脚本
[code]
function InitializeSetup: Boolean;
// var Path:string ; //声明变量
var ResultCode: Integer;
begin //开始
//判断注册表中是否存在相应的版本注册信息
if RegKeyExists(HKLM, 'SOFTWARE\Microsoft\.NETFramework\policy\v4.5') then
begin
Result := true; //变量赋值
end
else
begin
//MsgBox是Visual Basic和VBS中的一个函数,功能是弹出一个对话框,等待用户单击按钮,并返回一个Integer值表示用户单击了哪一个按钮。
if MsgBox('系统检测到您没有安装.Net Framework4.5,是否立刻下载并安装?', mbConfirmation, MB_YESNO) = idYes then
begin
//Path := ExpandConstant('{pf}\Internet Explorer\iexplore.exe');
//Exec(Path, 'http://www.microsoft.com/zh-cn/download/details.aspx?id=17718', '', SW_SHOWNORMAL, ewWaitUntilTerminated, ResultCode);
ExtractTemporaryFile('dotNetFx45_Full_setup.exe');
Exec(ExpandConstant('{tmp}\dotNetFx45_Full_setup.exe'), '', '', SW_SHOWNORMAL, ewWaitUntilTerminated, ResultCode);
MsgBox('请安装好.Net Framework4.5环境后,再运行本安装包程序!',mbInformation,MB_OK);
Result := false;
end
else
begin
MsgBox('没有安装.Net Framework4.5环境,无法运行程序,本安装程序即将退出!',mbInformation,MB_OK);
Result := false;
end;
end;
end;
; 有关创建 Inno Setup 脚本文件的详细资料请查阅帮助文档!
#define MyAppName "我的程序"
#define MyAppVersion "1.5"
#define MyAppPublisher "我的公司"
#define MyAppURL "http://www.baidu.com/"
#define MyAppExeName "ConsoleApplication8.exe"
[Setup]
; 注: AppId的值为单独标识该应用程序。
; 不要为其他安装程序使用相同的AppId值。
; (生成新的GUID,点击 工具|在IDE中生成GUID。)
AppId={{BD7D1785-F7AC-44DA-B58E-CC84DCFB0418}
;程序名
AppName=APP
;版本号
AppVersion=APP 1.0.0
;AppVerName={#MyAppName} {#MyAppVersion}
;发布者名
AppPublisher={#MyAppPublisher}
;相关连接
AppPublisherURL={#MyAppURL}
AppSupportURL={#MyAppURL}
AppUpdatesURL={#MyAppURL}
;默认安装目录
DefaultDirName={pf}\{#MyAppName}
;默认开始菜单名
DefaultGroupName={#MyAppName}
;是否打开->可选安装开始菜单项
;AllowNoIcons=yes
;安装协议
;LicenseFile=C:\Example\原始文件\agreement.txt
;安装前查看的文本文件
InfoBeforeFile=D:\mcWindowsService.txt
;安装后查看文本文件
InfoAfterFile=D:\mcWindowsService.txt
;输出文件夹,安装包生成的文件夹
OutputDir=C:\Users\Administrator\Desktop\我的程序
;输出文件名
OutputBaseFilename=baidu
;安装图标
SetupIconFile=E:\ooopic_1440492260.ico
;安装需要输入密码
;Password=123
;Encryption=yes
;压缩相关
Compression=lzma
SolidCompression=yes
;可以让用户忽略选择语言相关
;ShowLanguageDialog = yes
;备注版本信息
;VersionInfoCompany=HTTP://www.Hkiss.COM
;VersionInfoDescription=ISsample 汉化增强版
;VersionInfoVersion=1.0.0.0
;VersionInfoCopyright=Copyright (C) 2007-2008 Hkiss
;制作选择语言
[Languages]
Name: "chinesesimp"; MessagesFile: "compiler:Default.isl"
;用户定制任务
[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked; OnlyBelowVersion: 0,6.1
;文件安装
[Files]
Source: "E:\ConsoleApplication8\ConsoleApplication8\bin\Release\ConsoleApplication8.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "E:\ConsoleApplication8\ConsoleApplication8\bin\Release\ConsoleApplication8.pdb"; DestDir: "{app}"; Flags: ignoreversion
Source: "E:\ConsoleApplication8\ConsoleApplication8\bin\Release\ConsoleApplication8.vshost.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "E:\ConsoleApplication8\ConsoleApplication8\bin\Release\ConsoleApplication8.vshost.exe.manifest"; DestDir: "{app}"; Flags: ignoreversion
Source: "E:\ConsoleApplication8\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
;启动另外一个程序
Source: "C:\Users\Administrator\Desktop\桌面资料下载\dotNetFx45_Full_setup.exe"; DestDir: "{tmp}"; Flags: ignoreversion
; 注意: 不要在任何共享系统文件上使用“Flags: ignoreversion”
;安装类型设置
;[Types]
;组件安装
;[Components]
;开始菜单,桌面快捷方式
[Icons]
Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"
Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon
;添加一个帮助文挡
;Name: {group}\ISsample 1.0.0.0 帮助文档;Filename: {app}\ISsample.chm
;用来在程序安装完成后 在安装程序显示最终对话框之前执行程序 常用与运行主程序 显示自述文件 删除临时文件
[Run]
Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent
;更改显示在程序中显示的消息文本
;[Messages]
;BeveledLabel=HKiss科技
;卸载对话框说明
;ConfirmUninstall=您真的想要从电脑中卸载ISsample吗?%n%n按 [是] 则完全删除 %1 以及它的所有组件;%n按 [否]则让软件继续留在您的电脑上.
;定义解压说明
;StatusExtractFiles=解压并复制主程序文件及相关库文件...
;用于在用户系统中创建,修改或删除注册表健值
;[Registry]
;Root: HKLM ;SubKey:"Software\ISsample";ValueType:dword;ValueName:config;ValueData:10 ;Flags:uninsdeletevalue
;在执行脚本
[code]
function InitializeSetup: Boolean;
// var Path:string ; //声明变量
var ResultCode: Integer;
begin //开始
//判断注册表中是否存在相应的版本注册信息
if RegKeyExists(HKLM, 'SOFTWARE\Microsoft\.NETFramework\policy\v4.5') then
begin
Result := true; //变量赋值
end
else
begin
//MsgBox是Visual Basic和VBS中的一个函数,功能是弹出一个对话框,等待用户单击按钮,并返回一个Integer值表示用户单击了哪一个按钮。
if MsgBox('系统检测到您没有安装.Net Framework4.5,是否立刻下载并安装?', mbConfirmation, MB_YESNO) = idYes then
begin
//Path := ExpandConstant('{pf}\Internet Explorer\iexplore.exe');
//Exec(Path, 'http://www.microsoft.com/zh-cn/download/details.aspx?id=17718', '', SW_SHOWNORMAL, ewWaitUntilTerminated, ResultCode);
ExtractTemporaryFile('dotNetFx45_Full_setup.exe');
Exec(ExpandConstant('{tmp}\dotNetFx45_Full_setup.exe'), '', '', SW_SHOWNORMAL, ewWaitUntilTerminated, ResultCode);
MsgBox('请安装好.Net Framework4.5环境后,再运行本安装包程序!',mbInformation,MB_OK);
Result := false;
end
else
begin
MsgBox('没有安装.Net Framework4.5环境,无法运行程序,本安装程序即将退出!',mbInformation,MB_OK);
Result := false;
end;
end;
end;
0 0
- 打包可执行程序,检查安装环境
- QT打包.exe可执行程序
- Pyinstaller打包生成可执行程序
- Python程序打包成.exe可执行程序
- java程序发布之jre篇 java程序打包成exe可执行安装包以便安装程序
- Java项目打包发布为可执行程序
- py2exe打包python文件成可执行程序
- 程序打包成可执行的jar包
- Python 3.6打包成EXE可执行程序
- Python 打包单文件可执行程序
- web应用打包成桌面可执行程序
- 把jsp程序打包成exe可执行程序
- 将一个java程序打包成一个可执行程序
- VB.Net程序打包成可执行的.exe程序
- 将一个java程序打包成一个可执行程序
- 如何将一个java程序打包成一个可执行程序
- 用freeze.py打包python程序成可执行程序(linux)
- 用PyInstaller把python程序打包成exe可执行程序
- java的枚举类型初始
- 关于二叉树,建立、遍历、求节点最大距离
- 快速掌握 Android Studio 中 Gradle 的使用方法
- Mysql开启远程连接方法
- UITextView
- 打包可执行程序,检查安装环境
- ajax 和 forword
- [分布式java]基于JavaAPI实现消息方式的系统间通信:TCP/IP+NIO
- 文件和文件目录重命名问题
- js各种框的总结
- 针对url参数的加密解密算法(原创)
- 【pushing my way】笛卡尔树
- 把txt文件转换成pdf格式的方法
- Treasure Hunt IV