社区应用 最新帖子 精华区 社区服务 会员列表 统计排行
  • 1975阅读
  • 0回复

[共享]关于便携软件(Portable Soft)的概念及制作!

楼层直达
级别: 光盘中级
发帖
2559
飞翔币
335
威望
288
飞扬币
484
信誉值
0
关于便携软件(Portable Soft)的概念及制作!
1. 基本概念

    便携软件(Portable Soft、Portable Application)是指可以放在可移动设备并能够运行在任意其他Windows系统下的应用程序。
 
    便携软件可直接从可移动设备上启动,同时加载个人自定义配置,就像运行在自己的电脑上一样;在断开设备后,不在电脑上留下任何个人数据。

    按照Wikipedia上关于便携软件的定义,作为一款便携软件,必须满足以下3个条件:
    (1) 没有任何形式的安装;
    (2) 个人设置必须紧跟着软件;这就意味着不能使用注册表保存设置;
    (3) 在运行过的电脑上不留下任何痕迹。

2. 便携软件与绿色软件的异同

    便携软件在国外比较流行,而国内则主要是绿色软件。

    绿色软件的核心理念是免安装、易卸载、无污染,这是与便携软件相通的地方;

    绿色软件可分为狭义和广义两种: 狭义的绿色软件也称为纯绿色软件,是指软件对系统几乎没有任何改变,除了软件的安装目录,不往注册表、系统文件夹等任何地方写入任何信息,卸载软件只需要直接删除安装目录即可;广义的绿色软件是指不需要专门的安装程序,对系统的改变比较少,手工就可以完成操作,比如拷贝几个动态库、导入注册表或借助批处理等脚本即可直接完成。

    仿照绿色软件的划分,我认为便携软件也同样可以分为狭义的便携软件和广义的便携软件:

    狭义的便携软件:必须满足上面提到的三个条件,即免安装、配置跟随、不留任何痕迹!

    广义的便携软件:可以满足两个条件,即免安装、不留任何痕迹(即必须实现纯净卸载)!

    从上可知,狭义的绿色软件能够满足便携软件的概念;广义的绿色软件不完全符合便携软件的要求,不过,尽管有时需要操作注册表和文件系统,但只要做好善后工作,在软件不使用时能够实现彻底、纯净的卸载,也是一种广义的便携软件。而便携软件与绿色软件也都可以包括精简软件的过程。

    若划分软件的绿化便携程度,结果大致如下:狭义的便携软件 ≥ 狭义的绿色软件 > 广义的便携软件 ≥ 广义的绿色软件。


3. 如何实现软件便携化

    为了实现应用程序的便携化,一般有两种方式:

    (1) 便携化的软件开发理念
    设计程序不使用注册表存储配置信息,也不在程序目录之外的其他目录下生成不必要的文件。
    配置信息可以保存在程序目录下的INI文件或其他类似的配置文件中,这样可以保证软件运行完毕后,不在目标电脑上留下任何残留信息,且能使配置信息能跟够随可移动设备中的软件而同步移动。

    (2) 软件虚拟化技术
    这是一种在Windows环境下实现软件便携化的策略。所谓软件虚拟化技术,是为软件创建一个缓冲Dll运行库的缓冲区,这个缓冲区应用层能够拦截任何非便携化的文件系统调用和注册表调用,并将这些调用转向至程序所在的目录。因此,软件虚拟化技术不需要修改软件源程序就可以实现软件的便携化。


4. 便携软件的制作

    若程序开发时即贯彻了便携化的理念,这样的程序是完美的,也是无需二次加工的;因此,便携软件的制作更多指的是软件虚拟化技术的应用,即将应用软件二次加工成便携软件,能实现狭义的便携软件最好了,如果不行,也一定要达到广义的便携软件的要求!软件虚拟化工具中我用的最多的是就是Thinstall,Thinstall是一款专业的软件虚拟化工具,不行现在Thinstall现在被鼎鼎大名的Vmware公司收购了,其发布的软件虚拟化工具"VMware Project North Star"也正处于beta阶段,很值得期待!用免费的安装程序制作工具NSIS(Nullsoft Scriptable Install System)也可以实现一定的软件便携化。

    现在也流行单文件软件,其实单文件软件并不完全等同于便携软件,只是单文件软件更趋向于便携软件;现在单文件软件的概念也不是很统一,单文件软件做的好的话同样是优秀的便携软件;但不论实现形式如何,目的都是为了方便使用,都是受欢迎的!

  虽然便携软件是为了方便软件在可移动设备上使用,但其理念更适用于日常的电脑应用;不管是绿色软件还是便携软件,我们的目的是通过它们来打造最纯净、最绿色的系统。
   
    当然,要实现所有的软件绿化、便携化是不可能的, 我们只有尽可能地追求软件绿化、便携化,让更多的软件"来无踪、去无影"、"来也匆匆,去也匆匆"!而这也是我一直为之努力的:追求绿色便携软件、打造清爽干净系统!基于此理念,我会在这里为大家奉上我自己精心制作的绿色软件、便携软件,并期待与大家的交流!

5. 参考资料

    Wikipedia:http://en.wikipedia.org/
    绿色软件联盟:http://www.xdowns.com/
    深度技术论坛:http://bbs.deepin.org/

原文地址:http://portablesoft.cn/read.php/50.htm