Ubuntu版 发表于 2013-6-8 00:51:16

什么是便携软件 (Portable Soft)?转载

1. 基本概念
便携软件 (Portable Soft、Portable Application) 是指可以放在可移动设备并能够运行在任意其他 Windows 系统下的应用程序 (Portable——便于携带的,手提式的;轻便的)。
便携软件可直接从可移动设备上启动,同时加载个人自定义配置,就像运行在自己的电脑上一样;在断开设备后,不在电脑上留下任何个人数据。
按照 Wikipedia 上关于便携软件的定义,作为一款便携软件,必须满足以下3个条件:
(1) 没有任何形式的安装;
(2) 个人设置必须紧跟着软件;这就意味着不能使用注册表保存设置;
(3) 在运行过的电脑上不留下任何痕迹。
2. 我们为什么需要便携软件?
从其定义不难看出,便携软件是一种"真正纯绿色无污染"的软件,它比"绿色软件"更追求完美,不在系统中留下任何垃圾信息,而且配置会实时保存下来,即方便放在U盘中随时以自己的配置启动,也非常方便我们软件的日常应用管理,比如在重装系统的情况下,可以达到"免安装、免配置"即可使用的目的!而且由于便携软件不在系统中留下垃圾信息,因此可以让系统常用常新,永葆健壮!
3. 便携软件与绿色软件的异同
便携软件在国外比较流行,而国内则主要是绿色软件。绿色软件的核心理念是免安装、易卸载、无污染,这是与便携软件相通的地方;
绿色软件可分为狭义和广义两种: 狭义的绿色软件也称为纯绿色软件,是指软件对系统几乎没有任何改变,除了软件的安装目录,不往注册表、系统文件夹等任何地方写入任何信息,卸载软件只需要直接删除安装目录即可;广义的绿色软件是指不需要专门的安装程序,对系统的改变比较少,手工就可以完成操作,比如拷贝几个动态库、导入注册表或借助批处理等脚本即可直接完成。
仿照绿色软件的划分,我认为便携软件也同样可以分为狭义的便携软件和广义的便携软件:
狭义的便携软件:必须满足上面提到的三个条件,即免安装、配置跟随、不留任何痕迹!
广义的便携软件:可以满足两个条件,即免安装、不留任何痕迹 (即必须实现纯净卸载)!
从上可知,狭义的绿色软件能够满足便携软件的概念;广义的绿色软件不完全符合便携软件的要求,不过,尽管有时需要操作注册表和文件系统,但只要做好善后工作,在软件不使用时能够实现彻底、纯净的卸载,也是一种广义的便携软件。而便携软件与绿色软件也都可以包括精简软件的过程。
因此,若划分软件的绿化便携程度,结果大致如下:狭义的便携软件 ≥ 狭义的绿色软件 > 广义的便携软件 ≥ 广义的绿色软件。
4. 如何实现软件便携化
为了实现应用程序的便携化,一般有以下几种方式:
(1) 便携化的软件开发
设计程序不使用注册表存储配置信息,也不在程序目录之外的其他目录下生成不必要的文件。配置信息可以保存在程序目录下的ini文件或其他类似的配置文件中,这样可以保证软件运行完毕后,不在目标电脑上留下任何残留信息,且能使配置信息能跟够随可移动设备中的软件而同步移动。
(2) "二次加工型"便携软件
这里的"二次加工"指的是根据软件的运行特点,分析其配置保存位置,然后编写一个 Loader 或 Launcher 程序来负责配置的还原、保存等工作而实现便携!NSIS 就是一个很不错的编写 Loader 或 Launcher 的工具!国外著名的 Portableapps.com 网站提供的便携软件都是用 NSIS 来编写 Launcher 的!我也是用 NSIS 来编写 Launcher 程序的!
(3) 软件虚拟化技术
这是一种在 Windows 环境下实现软件便携化的策略。所谓软件虚拟化技术,是为软件创建一个缓冲Dll运行库的缓冲区,这个缓冲区应用层能够拦截任何非便携化的文件系统调用和注册表调用,并将这些调用转向至程序所在的目录。因此,软件虚拟化技术不需要修改软件源程序就可以实现软件的便携化。最常用的虚拟化工具是Thinstall!
5. 便携软件的制作
若程序开发时即贯彻了便携化的理念,这样的程序是完美的,也是无需二次加工的;因此,便携软件的制作更多指的是软件虚拟化技术的应用,即将应用软件二次加工成便携软件,能实现狭义的便携软件最好了,如果不行,也一定要达到广义的便携软件的要求!
免费的安装程序制作工具 NSIS (Nullsoft Scriptable Install System) 是一个非常简便易用,运行效率高的便携软件制作工具,本站提供的便携软件大部分都是通过NSIS实现的。
而软件虚拟化工具中我用的最多的就是 Thinstall,Thinstall 是一款专业的软件虚拟化工具,不过现在 Thinstall 现在被鼎鼎大名的 Vmware 公司收购并更名为 Vmware ThinApp,需要了解或下载请访问这里;VMware ThinApp 更多的是作为单文件制作工具使用的,或者试试免费的虚拟化工具 Cameyo。
现在也流行单文件软件,其实单文件软件并不完全等同于便携软件,只是单文件软件更趋向于便携软件;现在单文件软件的概念也不是很统一,单文件软件做的好的话同样是优秀的便携软件;但不论实现形式如何,目的都是为了方便使用,都是受欢迎的!
虽然便携软件是为了方便软件在可移动设备上使用,但其理念更适用于日常的电脑维护、应用;不管是绿色软件还是便携软件,我们的目的是通过它们来打造最纯净、最绿色的系统。
当然,要实现所有的软件绿化、便携化是不可能的, 我们只有尽可能地追求软件绿化、便携化,让更多的软件"来无踪、去无影"、"来也匆匆,去也匆匆"!而这也是我一直为之努力的:追求绿色便携软件、打造清爽干净系统!基于此理念,我会在这里为大家奉上我自己精心制作的绿色软件、便携软件,并期待与大家的交流!
页: [1]
查看完整版本: 什么是便携软件 (Portable Soft)?转载