绿色软件制作方法

彩虹网

绿色软件制作方法(完整有图版)

许多人深有感触,重装系统的麻烦之处往往不仅仅在于 Windows的安装过

程,还有大量实用软件的安装和配置过程:周而复始的“运行Setups选择目标路径t选择安装组件〞过程,让人不胜其烦,如何删繁就减,让安装从此轻松起来呢?这次我们就来一个软件绿化大行动,了解什么是绿色软件,如何制作绿色软件,如何让系统重装后,大量的实用软件不需要安装或者只需要简洁的操作,就能直接使用.

小知识深入认识绿色软件

在DOS下装软件,程序只要直接拷贝或者解压缩就能够使用,不喜爱删掉就是.现在Windows下的程序必须经常安装才能使用,而且在安装时,可能往Windows注册表等种种你想都想不到的地方,塞进越来越多的“私货〞.于是,人们开始思念起以前“简洁〞的岁月,给那些安装时不用修改 Windows注册表

等任何内容,也不往Windows文件夹中拷任何文件,甚至是简洁拷来就能用的软件就是“绿色软件〞.

绿色软件可分为了狭义和广义两种.狭义的绿色也称为了纯绿色软件,是指软件对系统几乎没有任何改变,除了软件的安装目录,不往注册表、系统文件夹等任何地方写入任何信息(或只在开始菜单中添加简洁的快捷方式),卸载软件只需要直接删除安装目录即可,类似于以前的大多数DOS程序.

广义的绿色软件那么不需要专门的安装程序,对系统的改变比拟少,手工就可以完成操作,比方拷贝几个动态库、导入注册表或者可以借助于批处理等脚本即可直接完成.狭义的绿色软件最为了理想,但现在完全符合这种定义的软件已经越来越少了,好在相当多的软件还是可以制作成广义的绿色软件.

制作为了绿色软件有何好处

省略或简化程序的安装过程

绿色软件可以放置在硬盘的任何目录中,重装系统后,这些软件不用安装或只需要简洁的安装就可运行.比方通过复制安装文件夹的方法可以制作 QQ、

Foxmail的绿色软件,无论如何重装系统,也不管复制到任何目录中,只需要双击里的可执行程序即可运行.即使不是这样的绿色软件,也仅仅只需要执行批处理文件、安装脚本或REG文件即可,大大简洁了程序的安装.

省略或简化程序的配置

大量的软件将配置和数据保存在安装文件夹或注册表中,在制作绿色软件的时候,这些都被很好地保存下来.如QQ的聊天记录、好友信息,Foxmail的邮件、帐号等,都会毫发无损地保存下来,而如果是重新安装,这些信息的重新配置都将是一个很大的工作量,对丁不懂电脑的人来说,更是麻烦.

可迁移性强

理论上讲,绿色软件可以放置在电脑的任何一个地方,也可以通过移动硬盘携带到其他的电脑中不需安装直接运行,这给我们的工作带来很大的便利(如QQ聊天记录、电子邮件、地址簿、自定义的输入法等).

如何“绿化〞软件

下面我们就来探讨一下绿色软件的制作方法(简称为了“绿化〞),绿化的过程实际上就是我们自己完成安装程序的工作.没有什么固定的方法,需要猜想、分析和不断的实验、测试,在实际操作过程中,有以下一些由易到难的方法将有助丁你的绿化行动.

解压缩

先安装WinRAR,右击扩展名为了EXE的安装文件试一试,如果有解压缩的选项(或有“用WinRAR翻开〞,如图1),那该软件多半是届丁绿色安装的软件(也有例外,如EmEditor),试着把压缩包中的文件直接解压到目标路径, 双击运

行可执行文件,就可以测试软件的功能是否正常,如果功能正常,那么“绿化〞成功;如果不正常,就得动用下面的方法.

ScanferViruses.

BackupwithSmartSyncPro

覆添加到档案文件㊂…

童添加到Q)'WnDm6_Ch$rW

3压缩井邮寄…

澄压缩到"WinDVDbjChs.rar11井邮寄

道释放文件®…

建释放到这里凶

当释放到(£)WrDVD6^Chs\

•捷用WinRAR翻开

炭送到四 yesRy.com

安装后卸载

先安装软件,然后复制程序的安装文件夹到另一目录下,接着卸载此软件,

再到目标文件夹中双击可执行文件,看是否能正常运行.如果功能正常,那么“绿化〞就成功了(前面提到的QQ和Foxmail就是此类型的典型代表软件).

反编译安装程序

这个方法需要费一点力气了,需要根据安装程序所用的制作工具,选择相应的反编译程序,然后阅读反编译出的安装脚本,制作绿色软件.目前的软件大多使用专门的安装工具制作,如InstallShield,Wise,InnoSetup,WindowsInstaller,NSIS(Nullsoft),InstallerVISE,其中WindowsInstaller格式的安装文件(就是MSI,MST为了后缀的文件),可以通过微软的免费工具Orca翻开查看,InstallShield格式的安装文件也有很多免费的工具可以解压缩和查看脚本.如果

没有相应的反编译程序,就无法使用这个方法了.

打量安装和反安装文件

一般软件安装后都会在安装文件夹中生成安装文件(如Install.log)和卸载文件(如Unins000.dat).里面记载着创立的目录、复制的文件、在注册表中创立的键值等信息,可以用纯文本编辑器翻开、查看这些文件 (如图2).查看这些文件

可以理解反安装过程,最后根据反安装的信息制作绿色软件. 个别情况下这个文

件完全不包含可读信息,就只好换用其他方法了.

妙INSTAL11OG-记事本

文件⑥编辑国格式何帮毗出

Reg^ftBUalF807^8007651*61*91432 3

RegDBName:Licens^Number .

RegDBRoot:2 ―'

RegDBOld:8叩岫丽

MadeDir:C:\ProgramFiles\ACDSystems

MadeDir:C:\ProgramFiles\flCDSystents\fiCDSee

FileCopy:C:\ProgranFilesXACD

SijsteRS\ACPSee\UNWiSE.EXE

RegDBKe^:

Softwarc\Microsoft\Uindoiu5\CurrentUorsion\Uninstall

\ACDSee

RegDBUal:ACDSee

RegDBHame:Displaj|Hame

RegDBRoot:2

RegDBKey:

SoftwareXMicrosoFt\Windows\CurrentUprsion\Un?- >・「

XftCDSee

yesXy.c(wj

比拟系统快照

当前面的方法都失败的时候,可以试一试这个方法.具体思路就是在安装软件之前,把系统的状态记录下来,主要包含注册表和系统目录的所有文件状态.接下来就是安装软件,安装完成后,再一次记录系统状态.最后就是比拟前后两个系统状态的不同,即可得知安装程序所做的工作.

这些工作可以由专门的软件完成,如免费工具 Regshot(比拟注册表改变),

免费工具InCtrl5(监视软件安装会对系统造成的影响, 包含注册表、INI文件、指

定文件、指定文件夹、驱动器等),微软的Sysdiff工具(包含在Windows 2000 的Resource Kit中,用来查看安装应用程序前后注册表和硬盘上文件的改变 ),

或者 WinInstall LE(在 Windows 2000 Server 安装光盘

中).

系统前后的差异分为了文件局部和注册表局部. 文件局部指的是向系统目录拷

贝的文件,以及作为了COM组件注册的文件,还有与这些文件相关的注册表局部, 注册表局部单单指其余的注册表的改变. 对于文件局部,可以进一步区分出必须

要往系统目录拷贝的文件(这种情况是少数)和放在软件安装目录的文件.对于注 册表局部,区分出由这个软件的安装程序本身所作出的注册表操作和注册 COM

组件时候的注册表操作.

直接导出注册表 寻找自注册的COM组件

这个方法是方法5的简化版,现在软件的配置大多写在注册表中的

“ 软件公司名字〞和

“ 软件公司名字〞这2个键下面,直接

对把这2个注册表键导出到REG文件中.自注册的COM组件都需要导出如下 4 个函数:DllCanUnloadNow , DllGetClassObject , DllRegisterServer , DllUnregisterServer,可以用VC自带的Depend.exe找出哪一个动态链接库是 自注册的COM组件.最后写一个批处理文件用 Regsvr32.exe注册COM组件 和用Regedit.exe导入注册表.

通过上面分析安装程序的动作,把安装程序的工作分解为了复制文件、注册 COM组件、安装效劳驱动、注册表配置等几个局部,虽然注册表配置可以覆盖 注册COM组件、安装效劳驱动等操作步骤,但是把这些步骤明显分割出来有助 于制作绿色安装的软件.

以上所列绿化软件的六种方法,由易到难,有时可能需要几个方法联合使用.

绿化软件没有一条终南捷径,需要不断地分析和测试,测试时,最好能到全新的 系统中或别的电脑中跨平台进行. 这里需要说明的是,无论使用什么方法,都是 模拟软件的安装过程,所以原作者最容易给出该软件的绿色版本.

绿化实例

WinZip 和 WinRAR 巧绿化

WinRAR和WinZip可以采用方法1直接解压缩安装文件,先下载安装文件 到一个安装了 WinRAR的系统上,右击选择“解压文件〞,在弹出窗口中选择 目标路径即可,然后双击目标文件夹中的可执行文件即可直接运行. 不过,第一

次运行时,需要对软件进行设置.

FlashGet 的绿化

第一步:解压安装程序

FlashGet是大家用得比拟多的一个软件,要制作它的绿化版本,需要方法3 和方法6配合使用.下载并运行FlashGet的安装程序,然后取消安装.从如图 3上可以看出FlashGet是使用Wise制作的安装程序,下载安装 Wungui软件, 可以非常容易地把安装程序解压缩到一个目录中 (如图4).

FlashGetpetCar

Installation

—g

H: 11! I: MU - f 财 11 旧

tie 印 vim ^a^urtes

wte rt&to

j s * ,I / 」u>h$ x.m*

第二步:注册DLL

打量Maindir目录,其中有两个 DLL文件Jccatch.dll和Fgiebar.dll ,进

步打量这两个动态库文件的导出函数,可以知道这两个 DLL文件都是自注册的

COM组件,写一个批处理文件install.bat来注册这两个DLL.

REGSVR32 Jccatch.dll /s

REGSVR32 Fgiebar.dll /s

经过测试,功能正常,并且可以从浏览器 IE中用鼠标的右键菜单激活

FlashGet ,功能完全,下面考虑卸载过程.

第三步:制作反安装程序

运行Regedit.exe,发现FlashGet在注册表中的路径是

HKEY_CURRENT_USER\Software\JetCar\JetCar

,写一个注册表文件 unflashget.reg删除这个路径,如下:

REGEDIT4

;FlashGet

-HKEY_CURRENT_USER\Software\JetCar\JetCar

同时写一个批处理文件uninstall.bat来卸载这两个DLL文件并导入 unflashget.reg.

Regedit /s unflashget.reg

REGSVR32 /s /U Jccatch.dll

REGSVR32 /s /U Fgiebar.dll

第四步:删除不必要文件

随后删除我们用不到的文件,比方 Language目录下大量欧洲的语言文件,

这个绿色版本就做好了.把制作好的绿色的 FlashGet拷贝到U盘上,需要用的 时候,直接执行里面的Install.bat文件就可以了(注意,要在Flashget的目录运 行批处理文件),不需要任何文件拷贝,不再使用时,直接双击 uninstall.bat卸 载.

小提示

有人用优化大师提取FlashGet的注册表,然后直接导入注册表来制作绿色 的FlashGet,这样做是不行的.从前面的步骤来看,注册两个 DLL文件必然在

注册表中引入绝对路径,如果直接提取注册表的话,就必须根据当前的路径来修 改注册表中的路径,否那么制作的绿色版的 FlashGet只能在固定的目录运行.

免责声明:由于无法甄别是否为投稿用户创作以及文章的准确性,本站尊重并保护知识产权,根据《信息网络传播权保护条例》,如我们转载的作品侵犯了您的权利,请您通知我们,请将本侵权页面网址发送邮件到qingge@88.com,深感抱歉,我们会做删除处理。