期翼嘻嘻即时通讯综合平台

 找回密码
 立即注册
查看: 6560|回复: 4
打印 上一主题 下一主题

程序打包,制作安装包 [复制链接]

Rank: 3Rank: 3

跳转到指定楼层
楼主
发表于 2012-1-8 09:47:00 |只看该作者 |倒序浏览
程序打包,制作安装包,制作安装包是要先将客户端安装后,然后修改客户端配置 文件,修改完了再重新打包成新的自己的安装包再给自己的朋友安装,那就是你修改后的
从网上找的相关的教程,注意查看一下,相信有你用到的,
Inno Setup使用教程
  
1、认识脚本的格式:(详细说明可查阅Inno Setup 的帮助文档)
Inno Setup的安装脚本包含以下主要段落:
[Setup] 段:安装和卸载程序的全局设置,如作者信息、安装目录、压缩方式、是否卸载等。
[Types] 段:定义安装组件的类型,如“完全安装”、“最小安装”、“选择安装”。
[Components] 段:定义可供选择安装的所有组件
[Tasks] 段:定义安装期间所有由用户定制的任务。
[Dirs] 段:定义用户想额外创建的目录。
[Files] 段:定义要打包到安装程序里的文件。
[Icons] 段:定义要创建在开始菜单、桌面或任务栏等位置的快捷方式和图标。
[INI] 段:定义向用户系统中 .INI 文件中添加的新条目。
[InstallDelete] 段:定义要在安装之前删除的文件或文件夹。
[Languages] 段:定义安装程序中可使用的语言(适用于多国语言版)。
[Registry] 段:定义安装过程中要读取、新建或删除的注册表项。
[Run] 段:定义要在安装结束时运行的程序。
[UninstallDelete] 段:定义要在卸载时删除的其他文件或文件夹。
[UninstallRun] 段:定义要在开始卸载前运行的程序。
以上每个段落里都有若干具体条目对安装程序的处理功能进行详细设置,当然,并不是每一项都用得上,还得根据实际需要选择使用。
2、脚本范例分析:
先来看看一段用INNO SETUP脚本向导创建的基本脚本的[Setup]段:
[Setup]
AppName=Premiere 6.5 汉化补丁-----------------(程序名称)
AppVerName=Premiere 6.5 汉化补丁------------(程序名称+版本)
AppPublisher=浩子工作室----------------------------(开发单位或作者)
AppPublisherURL=http://www.haozi.com------(开发单位或作者网址)
AppSupportURL=http://www.haozi.com-------(技术服务网址)
AppUpdatesURL=http://www.haozi.com-------(更新升级网址)
DefaultDirName={pf}\Adobe\Premiere 6.5-----(默认安装路径,{pf}就是“Program files”文件夹)
DefaultGroupName=Premiere 6.5 汉化补丁----(默认添加在开始菜单中的项目名称)
AllowNoIcons=yes--------------------------------------(创建快捷方式图标)
LicenseFile=D:\汉化\许可文件.txt------------------(显示许可协议)
InfoBeforeFile=D:\汉化\汉化说明.txt-------------(显示软件说明)
OutputDir=成品-----------------------------------------(安装程序存放位置)
OutputBaseFilename=Premiere 6.5 汉化补丁--(安装程序名称)
SetupIconFile=汉.ico----------------------------------(安装程序图标)
Compression=lzma-------------------------------------(压缩器:Lzma)
SolidCompression=yes--------------------------------(压缩方式:一次性压缩)
括号里内容是笔者添加的注释,我想大家应该能够理解。不过,作为汉化补丁,一般不需要创建开始菜单项目,不需要创建快捷方式图标,不需要卸载功能,而要求 具有自动寻找原程序安装位置的功能,这样可使补丁安装更方便快捷, 因此作了如下修改:
(1)去掉以下项目:
DefaultGroupName=Premiere 6.5 汉化补丁----(默认添加在开始菜单中的项目名称)
AllowNoIcons=yes--------------------------------(创建快捷方式图标)
(2)增加以下项目:
DisableDirPage=yes-------------------------------(不用指定安装路径)
DisableProgramGroupPage=yes---------------(不要添加开始菜单项目)
DirExistsWarning=no-----------------------------(不提示文件夹已存在)
Uninstallable=no-----------------------------------(不要卸载程序)
(3)修改以下项目:
原来的:
DefaultDirName={pf}\Adobe\Premiere 6.5----(默认安装路径,{pf}就是“Program files”文件夹)关键问题是,这个路径是死的,一旦你在安装Premiere 6.5时更改了安装路径,比如有些人喜欢把大程序安装到D盘,这么一来,原路径就无效了,结果您还得手动指定正确的路径。这样的安装程序就显得太“笨” 了。那么,如何让补丁程序自动获得原程序的实际安装路径呢?回答是:利用注册表。
大多数应用程序安装后都会向注册表的特定位置写入安装和卸载信息,因此,只要让安装程序提取这些信息并转位自己的安装路径,就可实现自动定位功能。 Inno Setup早就支持这个功能了,现在,我们把Premiere 6.5的注册表信息告诉它就行了,请看修改后的:
DefaultDirName={reg:HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Adobe Premiere 6.5,InstallLocation}-------------(从注册表读取Premiere 6.5的实际安装路径)
接着来看看基本脚本的[Files]段, 前面讲过,这一段是用来定义要打包到安装程序里的文件的, 因此, 要搞清楚这几个名词:
Source:-------------文件的存放位置(来源)
DestDir:-------------文件要安装到什么地方(目标)
Flags:----------------对文件的附加处理参数(标示)
下面来看看具体内容:
[Files]
Source: "D:\汉化\Preminfo.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "D:\汉化\主程序\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
Source: "D:\汉化\插件\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
生词注释:
{app}----------------这是个常量, 代表程序安装路径,只要你在[Setup]段中的DefaultDirName项中进行了设定,其他地方就可以用它来代替。可能有人会问,常量是什么?通 俗地说就是固定词汇,它们用简单的符号分别代表操作系统中的一些固定目录,使脚本简洁明了。具体内容可参看Inno Setup的帮助文本里的相关说明。
Ignoreversion--------不理会文件的版本问题。
Recursesubdirs-------把主文件夹和子文件夹一块儿打包(一锅端)。
Createallsubdirs-----安装时创建相应的子文件夹。
对[Files]段的修改:很多汉化补丁都是直接用汉化过的文件去替换原文件,很少在原程序目录里创建新的文件夹,因此可以去掉 Flags 标示中的 Createallsubdirs 项。
最后来看看修改后的脚本:
[Setup]
AppName=Premiere 6.5 汉化补丁
AppVerName=Premiere 6.5 汉化补丁
AppPublisher=浩子工作室
AppPublisherURL=http://www.haozi.com
AppSupportURL=http://www.haozi.com
AppUpdatesURL=http://www.haozi.com
DefaultDirName={reg:HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Adobe Premiere 6.5,InstallLocation}
DisableDirPage=yes
DisableProgramGroupPage=yes
DirExistsWarning=no
Uninstallable=no
LicenseFile=D:\汉化\许可文件.txt
InfoBeforeFile=D:\汉化\汉化说明.txt
OutputDir=成品
OutputBaseFilename=Premiere 6.5 汉化补丁
SetupIconFile=汉.ico
Compression=lzma
SolidCompression=yes

[Files]
Source: "D:\汉化\Preminfo.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "D:\汉化\主程序\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs
Source: "D:\汉化\插件\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs

使用道具 举报

Rank: 2

沙发
发表于 2012-1-8 14:54:10 |只看该作者
谢谢你分享

使用道具 举报

Rank: 1

板凳
发表于 2012-1-8 21:07:31 |只看该作者
有点晕  谢谢

使用道具 举报

Rank: 4

地板
发表于 2012-3-2 21:57:14 |只看该作者
有点深奥
还是学了不少

使用道具 举报

Rank: 1

5#
发表于 2012-3-30 09:25:14 |只看该作者
我想问下在哪里修改登录的IP地址?

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

蓝牙耳机无线高音质适用于苹果华强北pro2023年新款华为小米通用 【推荐理由】赠运费险 【券后价】89.00

Archiver|手机版|期翼嘻嘻论坛企业即时通讯综合平台 ( 京 ICP 备 10015350 )

GMT+8, 2024-5-4 04:09 , Processed in 0.121693 second(s), 9 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部