Inno Setup 安装脚本的初级应用

Inno Setup 安装脚本的初级应用
Inno Setup 安装脚本的初级应用

Inno Setup 安装脚本的初级应用.txt54就让昨日成流水,就让往事随风飞,今日的杯中别再盛着昨日的残痕;唯有珍惜现在,才能收获明天。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=https://www.360docs.net/doc/6016975793.html,------(开发单位或作者网址)

AppSupportURL=https://www.360docs.net/doc/6016975793.html,-------(技术服务网址)

AppUpdatesURL=https://www.360docs.net/doc/6016975793.html,-------(更新升级网址)

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\Ado be 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=https://www.360docs.net/doc/6016975793.html,

AppSupportURL=https://www.360docs.net/doc/6016975793.html,

AppUpdatesURL=https://www.360docs.net/doc/6016975793.html,

DefaultDirName={reg:HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Ado be 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

vb程序打包

打包过程: 一).创建部署项目 1. 在“文件”菜单上指向“添加项目”,然后选择“新建项目”。 2. 在“添加新项目”对话框中,选择“项目类型”窗格中的“安装和部署项目”,然后选择“模板”窗格中的“安装项目”。在“名称”框中键入setup1。 3. 单击“确定”关闭对话框。 4. 项目被添加到解决方案资源管理器中,并且文件系统编辑器打开。 5. 在“属性”窗口中,选择ProductName 属性,并键入信息管理系统。 二).将主程序项目的输出添加到部署项目中 1. 在“文件系统编辑器”中,选择“应用程序文件夹”。在“操作”菜单上,指向“添加”,然后选择“项目输出”。 2. 在“添加项目输出组”对话框中,选择“项目”下拉列表中的“你的程序”。 3. 单击“确定”关闭对话框。 4. 从列表中选择“主输出”和“内容文件”组,然后单击“确定”。 三).创建安装程序类 1. 在“文件”菜单上指向“新建”,然后选择“项目”。 2. 在“新建项目”对话框中,选择“项目类型”窗格中的“Visual Basic 项目”,然后选择“模板”窗格中的“类库”。在“名称”框中键入installDB。 3. 单击“打开”关闭对话框。 4. 从“项目”菜单中选择“添加新项”。 5. 在“添加新项”对话框中选择“安装程序类”。在“名称”框中键入installDB。 6. 单击“确定”关闭对话框。 7. 详细代码附后。 四).创建自定义安装对话框 1. 在解决方案资源管理器中选择“setup1”项目。在“视图”菜单上指向“编辑器”,然后选择“用户界面”。 2. 在用户界面编辑器中,选择“安装”下的“启动”节点。在“操作”菜单上,选择“添加对话框”。 3. 在“添加对话框”对话框中,选择“许可协议”对话框,然后单击“确定”关闭对话框。 4. 在“添加对话框”对话框中,选择“文本框(A)”对话框,然后单击“确定”关闭对话框。 5. 在“操作”菜单上,选择“上移”。重复此步骤,直到“文本框(A)”对话框位于“安装文件夹”节点之上。 6. 在“属性”窗口中,选择BannerText 属性并键入:安装数据库. 7. 选择BodyText 属性并键入:安装程序将在目标机器上安装数据库 8. 选择Edit1Label 属性并键入:数据库名称: 9. 选择Edit1Property 属性并键入CUSTOMTEXTA1 10. 选择Edit1Value 属性并键入:dbservers

vs打包程序数据库图解

VS打包数据库图解 1.首先在需要部署的项目的解决方案资源管理器中新建一个安装项目 2.在安装项目的文件视图中,右键【应用程序文件夹】->【添加】->【项目输出】 选择你的项目中的启动项目,下面的列表中,默认就是主输出,确定。 3.此时在文件系统的中间栏目,会自动列出编译所需的文件。一个简单项目打包差不多,还有快捷方式什么的,就不说了。开始重点了。

创建安装程序类 4.在解决方案资源管理器中,新建一个类库项目【InstallDB】,删除Class1.cs,新建一个安装程序类[InstallDB.cs],等下将在这个类中编写附加数据库代码。 创建自定义安装对话框 5.在刚新建的安装项目上右键,【视图】->【用户界面】: 在用户界面中,右键【启动】-【添加对话框】-选择【文本框(A)】-确定。 6.然后右键这个文本框(A),将其上移到欢迎使用下面:

右键选择【属性】,参考下图的信息填写: 7.在刚新建的安装项目上右键,【视图】->【自定义操作】: 8.右键【自定义操作界面】的【安装】节点,【添加自定义操作】,弹出的对话框。

9.在查找范围里选择应用程序文件夹,再点击右侧的【添加输出(O)…】,选择刚新建的安装程序类项目,默认还是主输出,确定。此时: 10.右键这个【主输出来自InstallDB(活动)】,进入属性界面,在【CustomActionData】属性里输入下面的内容: /dbname=[DBNAME] /server=[SERVER] /user=[USER] /pwd=[PWD] /targetdir="[TARGETDIR]\" 说明:其中前四个方括号中的大写字母,为上面第6步图中输入的四个EditProPerty属性,需要对应好。最后一个targetdir的值的意思是安装后文件的目录路径。 特别提醒:前三个"/XXX=[XXX]"后面,都有一个空格的,小xin曾因此烦恼甚久,网上的某些教程实在是。。。很耐人。 11.现在可以添加数据库文件了,在刚新建的安装项目上右键,【添加】->【文件】,选择你的MDF和LDF文件,就是安装时需要附加的数据库文件。 12.最后,我们只需在安装程序类里编写附加数据库的代码了。打开上面第4步中新建的安装程序类,参考下方的代码,编写适合您的附加数据库代码 using System; using System.Collections.Generic; using https://www.360docs.net/doc/6016975793.html,ponentModel; using System.Configuration.Install; using System.Data.Sql; using System.Collections.Specialized; using System.Data.SqlClient; using System.Windows.Forms; namespace EaterySystem { [RunInstaller(true)] public partial class InstallDB : Installer

VS2010发布、打包安装程序超全超详细

1、 在vs2010 选择“新建项目”→“其他项目类型”→“Visual Studio Installer→ 命名为:Setup1 。 这是在VS2010中将有三个文件夹, 1.“应用程序文件夹”表示要安装的应用程序需要添加的文件; 2.“用户的‘程序’菜单”表示:应用程序安装完,用户的“开始菜单”中的显示 的内容,一般在这个文件夹中,需要再创建一个文件用来存放:应用程序.exe和卸载程序.exe; 3.“用户桌面”表示:这个应用程序安装完,用户的桌面上的创建的.exe快捷方式。 9、应用程序文件夹中点右键添加文件:表示添加要打包的文件; 添加的文件一般是已经编译过应用程序的debug目录下的文件;

如果debug 下面有子文件夹则需要“添加文件夹”,例如:data 然后把对应的子文件里的内容添加到此文件夹中; 把需要创建程序快捷方式的图标也添加进来:后缀名为:ico 10、在创建的项目名称(Setup1)上点击右键:属性

选择系统必备: 然后选择.NET的版本,和Windows Installer3.1(可选项) 选择:“从与我应用程序相同的位置下载系统必备组件” 这样安装包就会打包.NET FrameWork ,在安装时不会从网上下载.NET FrameWork组件;但是安装包会比较大。

VS2010发布.NET2.0的版本,在创建安装程序时,需要设置启动条件:在项目名称(setup1)上,点击右键选择“视图” “启动条件”:

然后VS2010会创建如下文件: 在“启动条件”中, 点击“.NET Framework”在Version上面选择.NET Framework 2.0; 这样.NET Framework 2.0上创建的项目在安装时,就不会安装.NET3.5或其他版本, 也不会重启(解决.NET 2.0 创建的项目,安装.NET FrameWork3.5的问题)。 11、设置安装文件的目录(路径): 创建的项目名称(setup1)点击左键(不是右键),在属性中设置参数如下图:

SIPp脚本编写方法基础m

SIPp脚本编写方法基础

目录 SIPp脚本编写方法入门 (1) 1. 脚本格式 (3) 1.1.基于XML进行扩展 (3) 1.2.DTD扩展语法规则 (3) 1.3.脚本结构 (3) 1.4.注释 (5) 2. 脚本类型 (5) 2.1.UAC (5) 2.2.UAS (5) 2.3.3PCC(三方通话) (6) 2.4.OCC(Out-of-call) (6) 3. 命令与属性 (6) 3.1.常用命令 (6) 3.2.常用属性列表 (8) 3.3.正则表达式 (10) 4. 变量与关键字 (11) 4.1.关键字的使用 (11) 4.2.变量定义与使用 (13) 4.3.鉴权 (15) 5. 分支和跳转 (16) 5.1.标签 (16) 5.2.条件判断 (16) 5.3.跳转和循环 (17) 5.4.概率分支 (18) 6. 文件引用 (19) 6.1.外部文件格式 (19) 6.2.引用方法 (20) 6.3.文件索引 (20) 7. 脚本中的命令操作 (21) 7.1.内部命令 (21) 7.2.外部命令 (21) 7.3.媒体命令 (21) 8. 附录 (23) 修订记录 (24)

1.脚本格式 1.1.基于XML进行扩展 SIPp的测试脚本遵循标准的XML V1.0版本的语法规范,XML即“可扩展标记语言”eXtensible Markup Language 的缩写,W3C组织与1998年发布XML 1.0规范。 1.2.DTD扩展语法规则 SIPp的执行目录中,存在一个sipp.dtd文件。该文件为标准的xml扩展语法规则,在该文件中,对send、recv、pause等元素增加了定义,包括其属性列表等内容,可作为脚本文件格式的校验。 1.3.脚本结构 一个标准的SIPp脚本,文件起始应为通用的xml前导区和DTD文件定义区如图所示: 接下来使用包括的部分,即为脚本的正文部分。 sipp脚本正文部分,包含如下几个区域: 1.初始化区 在初始化区域中,通常用来进行全局变量的定义和赋值等操作,在脚本未进行逻辑流程前,预先完成初始化动作。 初始化区是在脚本正文的最开始,通过使用命令,并在其之间插入一些

实用批处理(bat)教程

目录 第一章批处理基础 第一节常用批处理内部命令简介 1、REM 和:: 2、ECHO 和@ 3、PAUSE 4、ERRORLEVEL 5、TITLE 6、COLOR 7、mode 配置系统设备 8、GOTO 和: 9、FIND 10、START 11、assoc 和ftype 12、pushd 和popd 13、CALL 14、shift 15、IF 16、setlocal 与变量延迟(ENABLEDELAYEDEXPANSION / DISABLEDELAYEDEXPANSION 启动或停用延缓环境变量扩展名。) 17、ATTRIB显示或更改文件属性 第二节常用特殊符号 1、@命令行回显屏蔽符 2、%批处理变量引导符 3、> 重定向符 4、>>重定向符 5、<、>、<& 重定向符 6、|命令管道符 7、^转义字符 8、组合命令 9、& 组合命令 10、||组合命令 11、\"\"字符串界定符 12、, 逗号 13、; 分号 14、() 括号 15、! 感叹号 第二章FOR命令详解 一、基本格式 二、参数/d仅为目录 三、参数/R递归(文件名) 四、参数/L迭代数值范围 五、参数/F迭代及文件解析 第三章FOR命令中的变量

一、~I- 删除任何引号(\"),扩展%I 二、%~fI- 将%I 扩展到一个完全合格的路径名 三、%~dI- 仅将%I 扩展到一个驱动器号 四、%~pI- 仅将%I 扩展到一个路径 五、%~nI- 仅将%I 扩展到一个文件名 六、%~xI- 仅将%I 扩展到一个文件扩展名 七、%~sI- 扩展的路径只含有短名 八、%~aI- 将%I 扩展到文件的文件属性 九、%~tI- 将%I 扩展到文件的日期/时间 十、%~zI- 将%I 扩展到文件的大小 十一、%~$PATH:I 第四章批处理中的变量 一、系统变量 二、自定义变量 第五章set命令详解 一、用set命令设置自定义变量 二、用set命令进行简单计算 三、用set命令进行字符串处理 1、字符串替换 2、字符串截取 第六章if命令讲解 第一种用法:IF [NOT] ERRORLEVEL number command 第二种用法:IF [NOT] string1==string2 command 第三种用法:IF [NOT] EXIST filename command 第四种用法:IF增强的用法 第七章DOS编程高级技巧 一、界面设计 二、if…else…条件语句 三、循环语句 四、子程序 五、用ftp命令实现自动下载 六、用7-ZIP实现命令行压缩和解压功能 七、调用VBScript程序 八、将批处理转化为可执行文件 九、时间延迟 1、利用ping命令延时 2、利用for命令延时 3、利用vbs延迟函数,精确度毫秒,误差1000毫秒内 4、仅用批处理命令实现任意时间延迟,精确度10毫秒,误差50毫秒内 十、模拟进度条 十一、特殊字符的输入及应用 十二、随机数(%random%)的应用技巧 十三、变量嵌套与命令嵌套 1、更正了所有的错别字,适当排版,增加条理性。

使用Visual Studio 2010 打包安装程序

打包程序: 1,解决方案—右键菜单“添加”—新建项目—其他项目类型—安装和部署—Visual S tudio Installer—安装项目,输入名称Setup1,点“确定” 2,添加开始程序中的文件夹:右击左侧“应用程序文件夹”—添加—文件夹,自己设置名称。这里的作用就是好管理,这里我就叫它“测试打包系统”;然后再右击左侧“用户的程序菜单”—添加—文件夹,自己设置名称,这里我就叫它“测试打包系统”。

3,添加主输出:右击左侧“应用程序文件夹”—测试打包系统(即刚刚创建的文件夹),添加—项目输出-主输出-确定。 下一步:添加主输出

4,添加开始程序中和桌面的主程序快捷方式:单击左侧“应用程序文件夹”—测试打包系统(即刚刚创建的文件夹),右键菜单“创建主输出来自***的快捷方式”,命名为“测试打包系统”。然后将其分别拖到左侧“用户的程序菜单”—测试打包系统(即刚刚创建的文件夹)和左侧“用户桌面”(或单击左侧刚新建的文件夹--右侧右键—创建新的快捷方式--选择“应用程序文件夹”---主输出--“确定” ;单击左侧用户桌面--右侧右键—创建新的快捷方式---选择“应用程序文件夹”---主输出---确定)

5,设置程序图标:先把图标文件放到你的程序目录下---单击左侧“应用程序文件夹”---Images(自己创建的文件夹),---空白处右键—添加—文件---图标文件。然后左侧“用户的程序菜单下”的文件夹---单击刚才新建的程序快捷方式---属性窗口---Icon—浏览—图标文件---确定。同理添加“用户桌面”里快捷方式的图标。 添加"快捷方式的属性"

常用LINUX命令及脚本

常用LINUX命令及shell脚本 说明:本文档介绍的命令只说明比较有用的参数,要查看命令详情请‘MAN‘ 第一部分常用LINUX命令 (1) 1,基础命令 (1) 2,系统性能情况查看命令 (5) 3,网络命令 (6) 4,日志处理 (7) 5,其它命令 (9) 第二部分ftp命令说明 (9) 第三部分shell脚本 (10) 1批量创建目录 (10) 2,过滤出日志中昨天产生的线程挂起日志及详情代码 (11) 第一部分常用LINUX命令 1,基础命令 who 用于查看当前在线上的用户情况 参数: -m 显示当前用户名及详情 -q 显示用户的登陆帐号和登陆用户的数量 w 显示目前登入系统的用户信息 参数: -f 开启显示用户从何处登入系统 范例: was@linux-was:/tmp> w -f 00:55:11 up 48 min, 1 user, load average: 0.00, 0.02, 1.86 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT was pts/0 192.168.10.2 00:30 0.00s 0.84s 0.00s w –f JCPU指的是与该tty终端连接的所由进程占用的时间,不包括过去的后台作业时间;PCPU 指

的是当前进程(即w项中显示的)所占用的时间 id 查看显示目前登陆账户的uid和gid及所属分组及用户名 linux-was:~ # id uid=0(root) gid=0(root) groups=0(root) was@linux-was:/tmp> id uid=1000(was) gid=100(users) groups=16(dialout),33(video),100(users) hostname 显示当前主机名 ls 显示当前文件和目录 参数: -l 列出文件的详细信息 -a 列出目录下的所有文件,包括以 . 开头的隐含文件 -t 以时间排序 -r 对目录反向排序 -S 按文件大小排序 同时此命令也可查看文件或目录权限 pwd 查看”当前工作目录“的完整路径 当你在终端进行操作时,你都会有一个当前工作目录。 在不太确定当前位置时,就会使用pwd来判定当前目录在文件系统内的确切位置 参数: -P 输出物理路径,针对链接的参数 cd 进入特定的目录 参数: /指定目录进入指定的目录 .. 返回上一级目录 touch 创建文件 mkdir 创建目录 参数: -p 此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录

非常经典BAT知识教程

手把手教你写批处理(willsort题注版) Climbing兄可谓用心良苦,受其感昭,略紧微薄之力;原文内容一字未易,仅于每段之下另加题注,其文大多非为纠错,多是年来体会,或偶得,或渐悟,未免偏颇;又加近来俗事渐多,闲情愈少,心浮气燥,一蹴而就。义理悖逆,敬请斧正;措辞不当,尚请莫怪。 另,建议Climbing兄取文不用拘泥于国内,此类技术文章,内外水平相差极大;与其修正国内只言片语,不如翻译国外优秀著述。 -------------------------------------------------------- 标题:手把手教你写批处理-批处理的介绍 作者:佚名 编者:Climbing 出处:中国DOS联盟之联合DOS论坛 题注:willsort 日期:2004-09-21 -------------------------------------------------------- 批处理的介绍 扩展名是bat(在nt/2000/xp/2003下也可以是cmd)的文件就是批处理文件。 ====willsort编注===================================================== .bat是dos下的批处理文件 .cmd是nt内核命令行环境的另一种批处理文件 从更广义的角度来看,unix的shell脚本以及其它操作系统甚至应用程序中由外壳进行解释执行的文本,都具有与批处理文件十分相似的作用,而且同样是由专用解释器以行为单位解释执行,这种文本形式更通用的称谓是脚本语言。所以从某个程度分析,batch,unix shell,awk, basic,perl等脚本语言都是一样的,只不过应用的范围和解释的平台各有不同而已。甚至有些应用程序仍然沿用批处理这一称呼,而其内容和扩展名与dos的批处理却又完全不同。====================================================================== == 首先批处理文件是一个文本文件,这个文件的每一行都是一条DOS命令(大部分时候就好象我们在DOS提示符下执行的命令行一样),你可以使用DOS下的Edit或者Windows的记事本(notepad)等任何文本文件编辑工具创建和修改批处理文件。 ====willsort题注==================================== 批处理文件中完全可以使用非dos命令,甚至可以使用不具有可执行特性的普通数据性文件,这缘于windows系统这个新型解释平台的涉入,使得批处理的应用越来越“边缘化”。所以我们讨论的批处理应该限定在dos环境或者命令行环境中,否则很多观念和设定都需要做比较大的变动。 ====================================================================== ==

打包过程vs2010(包含卸载功能、生成一个exe文件)

1、在vs2010 选择“新建项目”----“其他项目类型”----“Visual Studio Installerà“安装项目”: 命名为:Setup1 。 这是在VS2010中将有三个文件夹, 1.“应用程序文件夹”表示要安装的应用程序需要添加的文件; 2.“用户的…程序?菜单”表示:应用程序安装完,用户的“开始菜单”中的显示的内容,一般在这个文件夹中,需要再创建一个文件用来存放:应用程序.exe和卸载程序.exe; 3.“用户桌面”表示:这个应用程序安装完,用户的桌面上的创建的.exe快捷方式。 2、应用程序文件夹中点右键添加文件:表示添加要打包的文件;

添加的文件一般是已经编译过应用程序的debug目录下的文件; 如果debug 下面有子文件夹则需要“添加文件夹”,例如:data

然后把对应的子文件里的内容添加到此文件夹中; 把需要创建程序快捷方式的图标也添加进来:后缀名为:ico 3、在创建的项目名称(Setup1)上点击右键:属性

选择系统必备 然后选择.NET的版本,和Windows Installer3.1(可选项)

选择:“从与我应用程序相同的位置下载系统必备组件” 这样安装包就会打包.NET FrameWork ,在安装时不会从网上下载.NET FrameWork 组件;但是安装包会比较大。 VS2010发布.NET2.0的版本,在创建安装程序时,需要设置启动条件:在项目名称(setup1)上,点击右键选择“视图”à“启动条件”:

然后VS2010会创建如下文件: 在“启动条件”中, 点击“.NET Framework”在Version上面选择.NET Framework 2.0;

bat批处理文件

批处理文件bat 语法备忘 需要用到的脚本语言还真是多,从系统管理、数据管理、程序开发。脚本语言的影子真是无处不在,孱弱的windows上的可怜的bat也是不得不时常备忘得东东。现在渐渐习惯了把一些零碎的需要整理的文档放在writely上面,即方便自己移动处理文档,还可以跟他们协作或者讨论之用。而且能支持word文档的直接导入,之前用的时候稳定性不很理想,有发生过几次文件不能保存或者保存了无效的问题,发信给他们管理员,倒是很快得到了答复和解决。最近用的时候才发现出现了下列的文字。Writely is now part of Google! 看来有钱就是好啊,想买啥就买啥。估计用不了多久,google也会变成跟ms一样被骂得对象了。没办法,有钱的,横看竖看都是一副欠扁的样。好了,切入正题,把google借来的文章先放着自己备用!:) 扩展名是bat(在nt/2000/xp/2003下也可以是cmd)的文件就是批处理文件。 ==== 注======================================= .bat是dos下的批处理文件 .cmd是nt内核命令行环境的另一种批处理文件 从更广义的角度来看,unix的shell脚本以及其它操作系统甚至应用程序中由外壳进行解释执行的文本,都具有与批处理文件十分相似的作用,而且同样是由专用解释器以行为单位解释执行,这种文本形式更通用的称谓是脚本语言。所以从某个程度分析,batch, unix shell, awk, basic, perl 等脚本语言都是一样的,只不过应用的范围和解释的平台各有不同而已。甚至有些应用程序仍然沿用批处理这一称呼,而其内容和扩展名与dos的批处理却又完全不同。 =================================== 首先批处理文件是一个文本文件,这个文件的每一行都是一条DOS命令(大部分时候就好象我们在DOS提示符下执行的命令行一样),你可以使用DOS下的Edit或者Windows的记事本(notepad)等任何文本文件编辑工具创建和修改批处理文件。 ==== 注=================== 批处理文件中完全可以使用非dos命令,甚至可以使用不具有可执行特性的普通数据性文件,这缘于windows系统这个新型解释平台的涉入,使得批处理的应用越来越"边缘化"。所以我们讨论的批处理应该限定在dos环境或者命令行环境中,否则很多观念和设定都需要做比较大的变动。 ======================== 其次,批处理文件是一种简单的程序,可以通过条件语句(if)和流程控制语句(goto)来控制命令运行的流程,在批处理中也可以使用循环语句(for)来循环执行一条命令。当然,批处理文件的编程能力与C语言等编程语句比起来是十分有限的,也是十分不规范的。批处理的程序语句就是一条条的DOS命令(包括内部命令和外部命令),而批处理的能力主要取决于你所使用的命令。 ==== 注==================

常用shell脚本指令

常用shell脚本命令 1、显示包含文字aaa的下一行的内容: sed -n '/aaa/{n;p;}' filename 2、删除当前行与下一行的内容: sed -i '/aaa/{N;d;}' filename 3、删除当前行与下两行的内容: sed -i '/aaa/{N;N;d;}' filename 依次类推,删除三行,则为{N;N;N;d;},分析知:N为next 4、得出以空格为分割的字符串中单词的个数,即统计个数: awk ' { print NF } ' 如显示字符串VALUE中的单词个数,其中VALUE为:aaa bbb ccc ddd ee f 则执行 echo $VALUE | awk ' { print NF } ' 后的结果为6 5、在linux中建立一个文件与另一文件的链接,即符号链接 ln -s /var/named/chroot/etc/named.conf named.conf 这要就建立了当前目录的文件named.conf对/var/named/chroot/etc/named.conf 的符号链接。即操作named.conf就意味着操作实际文件/var/named/chroot/etc/named.conf ,这时用ll命令查看的结果如: lrwxrwxrwx 1 root root 32 Mar 22 12:29 named.conf -> /var/named/chroot/etc/named.conf 注意:当用sed来通过named.conf来删除一部分信息时,会将符号链接的关系丢掉,即会将named.conf变成一个实际文件。所以需对实际文件进行删除操作。 6、显示指定字符范围内的内容: 如:显示文件test.txt中字符#test begin与#test end之间所有的字符 sed -n "/#test begin/,/#test end/p" test.txt 或 awk "/#test begin/,/#test end/" test.txt 在日常系统管理工作中,需要编写脚本来完成特定的功能,编写shell脚本是一个基本功了!在编写的过程中,掌握一些常用的技巧和语法就可以完成大部分功能了,也就是2/8原则. 1. 单引号和双引号的区别 单引号与双引号的最大不同在于双引号仍然可以引用变量的内容,但单引号内仅是普通字符,不会作变量的引用,直接输出字符窜。请看如下例子: [root@linux ~]# name=HaHa [root@linux ~]# echo $name HaHa [root@linux ~]# myname="$name is wow" [root@linux ~]# echo $myname HaHa is wow [root@linux ~]# myname='$name is wow'

bat基本应用

.bat文件的基本应用 bat是dos下的批处理文件。 首先批处理文件是一个文本文件,这个文件的每一行都是一条DOS命令(大部分时候就好像我们 在DOS提示符下执行的命令行一样),你可以使用DOS下的Edit或者Windows的记事本(notepad)等任何文本文件编辑工具来创建和修改批处理文件。 ==== 注 =================== 批处理文件中完全可以使用非dos命令,甚至可以使用不具有可执行特性的普通数据性文件,这缘 于windows系统这个新型解释平台的涉入,使得批处理的应用越来越"边缘化"。所以我们讨论的批 处理应该限定在dos环境或者命令行环境中,否则很多观念和设定都需要做比较大的变动。 ======================== 其次,批处理文件是一种简单的程序,可以通过条件语句(if)和流程控制语句(goto)来控制命令运行 的流程,在批处理中也可以使用循环语句(for)来循环执行一条命令。当然,批处理文件的编程能力 与C语言等编程语句比起来是十分有限的,也是十分不规范的。批处理的程序语句就是一条条的DOS命令(包括内部命令和外部命令),而批处理的能力主要取决于你所使用的命令。 ==== 注 ================== 批处理文件(batch file)也可以称之为批处理程序(batch program),这一点与编译型语言有所不同, 就c语言来说,扩展名为c或者cpp的文件可以称之为c语言文件或者c语言源代码,但只有编译 连接后的exe文件才可以称之为c语言程序。因为批处理文件本身既具有文本的可读性,又具有程 序的可执行性,这些称谓的界限是比较模糊的。 =========================== 第三,每个编写好的批处理文件都相当于一个DOS的外部命令,你可以把它所在的目录放到你的DOS搜索路径(path)中来使得它可以在任意位置运行。一个良好的习惯是在硬盘上建立一个bat或 者batch目录(例如C:\BATCH),然后将所有你编写的批处理文件放到该目录中,这样只要在path中设置上c:\batch,你就可以在任意位置运行所有你编写的批处理程序。 ==== 注 ===== 纯以dos系统而言,可执行程序大约可以细分为五类,依照执行优先级由高到低排列分别是:DOSKEY宏命令(预先驻留内存),https://www.360docs.net/doc/6016975793.html,中的内部命令(根据内存的环境随时进驻 内存),以com为扩展名的可执行程序(由https://www.360docs.net/doc/6016975793.html, 直接载入内存),以exe位扩展名的 可执行程序(由https://www.360docs.net/doc/6016975793.html, 重定位后载入内存),以bat位扩展名的批处理程序(由https://www.360docs.net/doc/6016975793.html, 解释分析,根据其内容按优先级顺序调用第2,3,4,5种可执行程序,分析一行,执行一行,文件本身不载入内存) ============ 第四,在DOS和Win9x/Me系统下,C:盘根目录下的AUTOEXEC.BAT批处理文件是自动运行批 处理文件,每次系统启动时会自动运行该文件,你可以将系统每次启动时都要运行的命令放入该文

VS2005安装包打包教程

vs2005打包图解(含卸载功能) (2009-04-17 20:33:09) 转载▼ 标签: vs2005打包图解 卸载 it 分类:编程 该打包过程在vs2005中完成,但也适用于vs2008,程序是用c#写的。 1.新建安装和部署。 打开你所写的项目,在解决方案上右键->添加->新建项目。如图: 选择其他项目类型->安装和部署->安装项目。在名称中把名字改为你所希望的名字,然后确定。如图:

2.确定后打开文件系统,然后单击应用程序文件夹,在右边空白处右键->添加->项目输出。如图: 3.选择主输出,然后确定。这时文件系统中的应用程序文件夹如图: 4.在刚添加的主输出上右键,创建其快捷方式。可以重命名也可不重命名。这里命名为PicSee。 如图:

5.剪切刚创建的快捷方式,然后单击用户的程序菜单,在其上右键,添加,文件夹,重命名文件夹。这个文件夹名字就是你在开始,所有程序中显示的名字。然后单击刚创建的文件夹,在右边空白处粘贴快捷方式,安装好程序后,这个快捷方式会出现在所有程序中。如图: 6.像上面一样再创建一个快捷方式,剪切,然后单击用户桌面,粘贴。安装完程序后,这个快捷方式出现在桌面。如图: 7.右击左边的"应用程序文件夹"打开属性对话框: 将属性中的"defaultlocation"的路径中的"[manufacturer]"去掉, 不然的话做好的安装程序默认安装目录会是"c:\programm file\你的用户名\安装解决方案名称"。 8.右键你的安装项目名,属性。如图:

在打开的属性页中,选择"系统必备",在打开的系统必备页中,选中如下图中的选择项,选上以后,在生成的安装文件包中包含.netframework组件,然后确定。

vs2010发布、打包安装程序(超全超详细)

1、在vs2010 选择“新建项目”→“其他项目类型”→“Visual Studio Installer→ “安装项目”: 命名为:Setup1 。 这是在VS2010中将有三个文件夹, 1.“应用程序文件夹”表示要安装的应用程序需要添加的文件; 2.“用户的‘程序’菜单”表示:应用程序安装完,用户的“开始菜单”中的显示 的内容,一般在这个文件夹中,需要再创建一个文件用来存放:应用程序.exe和卸载程序.exe; 3.“用户桌面”表示:这个应用程序安装完,用户的桌面上的创建的.exe快捷方式。 2、应用程序文件夹中点右键添加文件:表示添加要打包的文件;

添加的文件一般是已经编译过应用程序的debug目录下的文件; 如果debug 下面有子文件夹则需要“添加文件夹”,例如:data 然后把对应的子文件里的内容添加到此文件夹中;

把需要创建程序快捷方式的图标也添加进来:后缀名为:ico 3、在创建的项目名称(Setup1)上点击右键:属性 选择系统必备:

然后选择.NET的版本,和Windows Installer3.1(可选项) 选择:“从与我应用程序相同的位置下载系统必备组件” 这样安装包就会打包.NET FrameWork ,在安装时不会从网上下载.NET FrameWork组件;但是安装包会比较大。

VS2010发布.NET2.0的版本,在创建安装程序时,需要设置启动条件:在项目名称(setup1)上,点击右键选择“视图”“启动条件”:

然后VS2010会创建如下文件: 在“启动条件”中, 点击“.NET Framework”在Version上面选择.NET Framework 2.0;

Genesis2000脚本编写常用命令剖析

1. switch 的用法,注意每一个case 必须要以breaksw 结尾 否则会继续执行下一个case 的命令 (1) 另外,$< 的意思是取得使用者的stand input (2) echo 若加上-n 的选项,则游标会停留在该行最后 echo -n "Input one color: " set STOPLIGHT = $< switch ($STOPLIGHT) case red: echo "red" breaksw case orange: echo "orange" breaksw case green: echo "green" breaksw default: echo "you input $STOPLIGHT" endsw -------------------------------------------------------------------- 2. 利用set 来取得变数,set ABC = "I am ABC" 也可以利用`command` 来取得命令 且外,case 也可以用万用字元* 来代替 set VER = `uname -r` switch ($VER) case 5.5: echo "run the setup of $VER" breaksw case 5.3: echo "run the setup of $VER" breaksw case 5.*: echo "like 5.x" breaksw case 4.*: echo "like 4.x" breaksw default: echo "no idea" endsw

vs2010发布、打包安装程序详解

这是我在网上搜到的,加以自己的理解和对一些不明白的地方做了一些更新说明。 1、在vs2010 选择“新建项目”→“其他项目类型”→“Visual Studio Installer”→ “安装项目”: 命名为:Setup1 ,选择好位置后点确定。这时在VS2010中将有三个文件夹,如图: a.“应用程序文件夹”:表示要安装的应用程序需要添加的文件; b.“用户的‘程序’菜单”:表示应用程序安装完,用户的“开始菜单”中的显示的 内容,一般在这个文件夹中,需要再创建一个文件用来存放:应用程序.exe和卸载程序.exe; c.“用户桌面”表示:这个应用程序安装完,用户的桌面上的创建的.exe快捷方式。 2、应用程序文件夹中点右键,添加文件:表示添加要打包的文件;

添加的文件一般是已经编译过应用程序的debug目录下的文件(主要为.exe文件,其他文件可选); 如果有所需要的动态库也加载进来: 如果还要添加子文件夹则需要“添加文件夹” 然后把对应的子文件里的内容添加到此文件夹中; 把需要创建程序快捷方式的图标也添加进来(在res文件夹下),后缀名为:ico

3、在创建的项目名称(Setup1)上点击右键 属性,选择系统必备:

如果在项目名称(Setup1)的“检测到的依赖项”里检测到所添加的程序文件有.NET 依赖,如图:则选择所需的.NET的版本和Windows Installer3.1(可选项),如果没有则不用选。 选择:“从与我应用程序相同的位置下载系统必备组件”,这样安装包就会打包.NET FrameWork ,在安装时不会从网上下载.NET FrameWork组件;但是安装包会比较大。 在创建安装程序时,需要设置启动条件(如果有.NET依赖):在项目名称(setup1)上,点击右键选择“视图” “启动条件”:

(完整版)按键精灵常用脚本命令汇集

//~~~~~~~~~~{[做后台的准备]}~~~~~~~~~~~ //下面,用标题名来找父窗口 Hwnd = Plugin.Window.Find(0, "无标题- 记事本") //下面,根据父窗口来找子窗口(找对了标题名才有效) HwndEx = Plugin.Window.FindEx(Hwnd, 0, 0, 0) //下面,用程序名来找父窗口 Hwnd = Plugin.Window.Find("Notepad", 0) //下面,根据父窗口来找子窗口(找对了类名才有效) Hwnd = Plugin.Window.FindEx(Hwnd, 0, "Edit", 0) //~~~(也可以改指定程序的标题名来得来句柄)~~~ //下面,将指定程序名的标题名变为变量 Hwnd = Plugin.Window.Find("Notepad", 0) //改变窗口标题 Call Plugin.Window.SetText(Hwnd,"AJJL") //*********》之后可加第一种父子窗口就OK了《********* //~~~如果以上都不行,只剩下最后一种方法~~~~ //下面,鼠标指向的程序定为Hwnd这个变量(不过一定要加标记,否则变为假后台) hwnd=Plugin.Window.MousePoint() Rem star Goto star //区域模糊找色 //(XY,是坐标)(后面的是句柄,左X,上Y,右X,下Y,16位颜色,找的方式,相似度)XY = Plugin.Bkgnd.FindColorEx(Hwnd, 0, 0, 20, 20, "FFFFFF", 0, 0.9) //将XY坐标变为变量,再折分成X坐标和Y坐标。 MyArray = Split(XY, "|") X = Clng(MyArray(0)): Y = Clng(MyArray(1)) //后台判色 Color = Plugin.Bkgnd.GetPixelColor(hwndex,300,150) If color = "020503" Then //根据固定32位地址的值加红蓝(HP少于就。。。) Val = Plugin.Memory.Read32Bit(Hwnd, &H400000) //注意格式:符号&+字母H+8位地址 If clng(val)<=clng(HP)

批处理常用命令及用法大全

批处理常用命令及用法大全 说明:本文来自网络,由youxi01整理,由liqiochi修改完善。 阅读本文需要一定的dos基础概念,象:盘符、文件、目录(文件夹)、子目录、根目录、当前目录每个命令的完整说明请加/? 参数参考微软的帮助文档可以看到,在/? 帮助里,"命令扩展名"一词会经常出现"命令扩展名"是指相对于win98的dos版本而言,每个命令新增的功能 命令测试环境win2000proSP4win98的命令功能太少,就不作研究了 注:如果对某一命令还不是很熟悉,可以在命令行窗口下输入:命令名/?的方式来获得帮助。 例如:对dir命令的应用不熟悉,可以在命令行窗口下输入:dir /? 参数只列举常用参数。 注:errorlevel,msd,undelete在win7下不存在。 目录 1.echo 和@回显控制命令 (3) 2.shutdown 关机 (3) 3.dir显示目录中的文件和子目录列表 (4) 4.cd更改当前目录 (4) 5.md创建目录 (5) 6.rd删除目录 (5) 7.del删除文件 (5) 8.ren文件和文件夹重命名 (6) 9.cls清屏 (6) 10.type显示文件内容 (6) 11.copy拷贝文件(只能复制文件) (6) 12.title设置cmd窗口的标题 (7) 13.ver显示系统版本 (7) https://www.360docs.net/doc/6016975793.html,bel 和vol设置卷标 (7) 15.pause暂停命令 (7) 16.rem 和::注释命令 (7) 17.date 和time日期和时间 (8) 18.goto 和:跳转命令 (8) 19.find (外部命令)查找命令 (8) 20.more (外部命令)逐屏显示 (9) 21.tree显示目录结构 (9) 22.&顺序执行多条命令,而不管命令是否执行成功 (9) 23.&&顺序执行多条命令,当碰到执行出错的命令后将不执行后面的命令 . 9 24.||顺序执行多条命令,当碰到执行正确的命令后将不执行后面的命令 (9) 25.|管道命令,前一个命令的执行结果输出到后一个命令 (10)

相关文档
最新文档