绿色软件制作教程——实战篇精简拼音加加3.10——去掉F10互联网搜索工具拼音加加是拼音输入法中的经典作品之一,但其最新的3.10版本捆绑了名字为F10的互联网搜索工具,并且是强制安装,那么,如何才能删除这个讨厌的F10呢?下面将就如果删除F10搜索工具来简单说明软件精简的方法:1、下载拼音加加的3.10正式版,下载地址:、分析下载得到8.8M的JJSetup3.10.zip文件,解压缩到jj目录,文件列表如下:InstMsiA.ExeInstMsiW.ExeJJPack.msiJJSetup.ExeJJSetup.IniInstMsiA.Exe和InstMsiW.Exe用于在没有windowsinstaller2.0的机器上安装该服务的,目前绝大多数正常使用的机器都已经有了这个服务,完全可以不考虑这2个文件。JJSetup.Ini是文本文件,JJSetup.Exe仅仅才110k,而JJPack.msi有5.5M大小,很明显这是一个基于windowsinstaller的安装程序包,所以只要研究JJPack.msi这个文件就可以了,3、准备精简工具。这里我主要是用orca和msidb2个工具来修改msi文件,MSI文件编辑器orca工具在微软提供的windowsxp的sdk中,在sdk安装目录下寻找orca.msi,再安装这个orca.msi就可以了。msidb在windowsxp的sdk的安装后的bin目录,文件名字为msidb.exe。sdk下载地址:、运行orca.exe,选择file→open打开JJPack.msi文件,执行tools菜单的options命令,切换到database面板,勾选“GenerateauniquePackageCodeeachtimeadatabaseissaved”,然后执行file菜单的Saveas命令,把JJPack.msi文件另存为JJPackNoF10.msi文件,以后我们将要对这个JJPackNoF10.msi文件进行修改,而不影响原来的JJPack.msi文件。5、寻找F10.exe在orca的左侧栏选择File,执行CTRL+F命令查找F10.exe,记住Orca右边栏目中的File的值是_B7B624BDC2BD497F826470059753178F的字符串,而Component的值是C__B7B624BDC2BD497F826470059753178F的字符串。6、禁止msi文件安装f10.exe在orca的左侧栏选择FeatureComponents,执行CTRL+F命令查找刚才记录下来的Component的值“C__B7B624BDC2BD497F826470059753178F”,选中orca右侧栏中刚刚找到数据,点右键,执行DropRow命令,然后执行File菜单的Save命令,保存刚才做的修改。7、获取拼音加加的安装文件并删除F10.exe文件在orca的左侧栏选择Media,记录右边的Cabinet的值“#_ED8F65B50BD54F4B6AEE1178B56AD1D3”,关闭orca。把msidb.exe复制到jj目录,然后在jj目录建立一个批处理文件getcabfiles.cmd,内容如下:msidb.exe-x_ED8F65B50BD54F4B6AEE1178B56AD1D3-dJJPack.msimdfilesexpand_ED8F65B50BD54F4B6AEE1178B56AD1D3-F:*filesmove/Yfiles\_B7B624BDC2BD497F826470059753178F.\第一行的命令表示从JJPack.msi中提取出_ED8F65B50BD54F4B6AEE1178B56AD1D3这个cab文件。其中_ED8F65B50BD54F4B6AEE1178B56AD1D3”是前面记录下来的Media表中的Cabinet的值,不包括前面的#,JJPack.msi是未修改过的的拼音加加的msi安装包。第二行表示建立一个子目录叫做files第三行命令表示把拼音加加的“_ED8F65B50BD54F4B6AEE1178B56AD1D3”压缩包中的文件解压缩到了files子目录中。第四行命令表示把files目录中的“_B7B624BDC2BD497F826470059753178F”文件移动到jj目录下面,其中“_B7B624BDC2BD497F826470059753178F”是在第5步中寻找F10.exe时记录下的F10.exe的名字。如图2,很明显这个“_B7B624BDC2BD497F826470059753178F”就是F10.exe文件。8把剩下的拼音加加的安装文件重新打包到Msi文件中打包安装文件可以使用软件出品的cabarc工具(下载地址:),把cabarc.exe解压缩到jj目录,然后在这个目录新建一个批处理文件mknoF10msi.cmd,输入命令:del_ED8F65B50BD54F4B6AEE1178B56AD1D3cabarc.exe-mLZX:21-rN_ED8F65B50BD54F4B6AEE1178B56AD1D3files\*msidb.exe-a_ED8F65B50BD54F4B6AEE1178B56AD1D3-dJJPackNoF10.msi第一行命令表示删除从JJPack.msi中提取出_ED8F65B50BD54F4B6AEE1178B56AD1D3这个cab文件。第二行表示把目录files中的所有文件压缩到_ED8F65B50BD54F4B6AEE1178B56AD1D3这个文件中。第三行的命令表示把_ED8F65B50BD54F4B6AEE1178B56AD1D3这个cab文件加入到JJPackNoF10.msi文件中。9安装测试精简后的软件已经不再包含F10工具且功能正常。这样就得到了原来的8.8M的拼音加加的精简版JJPackNoF10.msi(5.2M大小),这里面的精简主要是避免安装F10搜索工具,F10搜索工具仅仅几百k,减小的3M大小的主要是不再保留InstMsiA.Exe和InstMsiW.Exe。绿化vnn——让vnn彻底隐身绿化软件的同时也是对软件重新打包的过程,我们可以修改软件的文件,使之具有原版软件所不一样的表现。笔者单位和家里的PC都处在内网,没有公网的IP地址,所以笔者安装了VNN(VirtualNativeNetwork),其可以为接入因特网的任意两台机器提供连通服务。VNN连通了的机器就像处于同一个局域网中一样,即使这些机器都不拥有公网地址,而都是处于私网内。通过VNN就可以借助互联网直接构建属于自己的“本地”网络。但vnn不运行的时候,vnn虚拟出来的网卡就会在系统托盘处显示一个小的图标说“网线没有接好”,占用了本来就很拥挤的系统托盘空间,并且更重要的是我不想要别人知道我在使用vnn,所以想要vnn的界面彻底从桌面上消失。因此我做了一个绿色版的vnn,同时使得网卡隐形。下面我就来讲述如何制作绿色版本的vnn,同时用类似windows本身的隐藏设备的方法来让vnn彻底隐身,又不影响正常的功能。1、下载vnn3.0(下载地址:)并安装。2、找出vnn虚拟网卡的驱动程序,打开设备管理器,在vnn的网卡设备上点击右键,选择属性,显示vnn虚拟网卡的属性对话框,察看驱动程序的详细信息,了解到vnn的驱动程序文件是vnnvnic.sys。在windows目录下的inf目录的所有inf文件中,查找包含“vnnvnic.sys”字符串的inf文件,找到了包含vnnvnic.sys的oem5.inf文件,这就是vnn虚拟网卡驱动的inf文件。3、把programfile目录下的vnn目录复制到其它地方,例如I:\VNN,在vnn目录中建立driver子目录,将oem5.inf和vnnvnic.sys复制到这个子目录中,把oem5.inf改名为netVDev.inf,用文本编辑器打开netVDev.inf,搜索字符串“characteristics”,把“Characteristics=0x1”修改为“Characteristics=0x9”,09就表示要隐藏网卡。4、从控制面板的添加删除程序处卸载vnnClient3.05、下载devcon.exe小工具(下载地址:),把devcon.exe复制到driver目录,在driver目录新建一个批处理文件install.cmd用来安装vnn的虚拟网卡驱动,内容如下:devconinstallnetVDev.inf*VNN_VNIC同时生成一个用于卸载vnn驱动批处理文件removevnn.cmd,内容如下:devconremove*VNN_VNIC运行driver目录的install.cmd,这样就安装了一个隐藏的vnn网卡驱动,同时右下角的托盘里面也没有vnn虚拟网卡断线的图标了。6、运行I:\VNN目录的VNNClientC.exe,填入申请的vnn的帐号,并且把帐号下面3个选项都选中。这时候右下角的托盘的vnn的运行状态的图标,表示vnn网络已经联通。7、让vnn以服务模式在后台运行。关闭运行的VNNClientC.exe,在I:\VNN目录建立批处理文件instsrv.cmd,内容如下:VNNClientC.exe-install执行这个批处理文件显示服务安装成功,然后在“我的电脑”右键选“管理”,在“服务和应用程序”选“服务”,双击其中的“VNNClientService”,把“常规”选项的“启动类型”修改为“自动”,把“登陆”选项的“登陆身份”选“本地系统帐户”,并取消“允许服务与桌面交互”这个选项,最后点击“应用”和“确定”,重启即可。(可以用VNNClientC.exe-remove来删除vnn服务)现在vnn就不会有“网线没有接好”提示了,所有的网络传输都在后台进行。通过这个例子,我们可以看到,绿化不仅仅可以使得软件的安装更加便捷,并且可以挖掘出新的功能。全民动员软件绿化!做自己的绿色软件许多人深有感触,重装系统的麻烦之处往往不仅仅在于Windows的安装过程,还有大量实用软件的安装和配置过程:周而复始的“运行Setup→选择目标路径→选择安装组件”过程,让人不胜其烦,如何删繁就减,让安装从此轻松起来呢?这次我们就来一个软件绿化大行动,了解什么是绿色软件,如何制作绿色软件,如何让系统重装后,大量的实用软件不需要安装或者只需要简单的操作,就能直接使用。小知识深入认识绿色软件在DOS下装软件,程序只要直接拷贝或者解压缩就能够使用,不喜欢删掉就是。现在Windows下的程序必须经常安装才能使用,而且在安装时,可能往Windows注册表等种种你想都想不到的地方,塞进越来越多的“私货”。于是,人们开始怀念起以前“简单”的岁月,给那些安装时不用修改Windows注册表等任何内容,也不往Windows文件夹中拷任何文件,甚至是简单拷来就能用的软件就是“绿色软件”。绿色软件可分为狭义和广义两种。狭义的绿色也称为纯绿色软件,是指软件对系统几乎没有任何改变,除了软件的安装目录,不往注册表、系统文件夹等任何地方写入任何信息(或只在开始菜单中添加简单的快捷方式),卸载软件只需要直接删除安装目录即可,类似于以前的大多数DOS程序。广义的绿色软件则不需要专门的安装程序,对系统的改变比较少,手工就可以完成操作,比如拷贝几个动态库、导入注册表或者