如何辨别应用是否为假便携(脚本化)

平常喜欢用便携应用,但似乎许多是通过脚本化来实现的,想请教如何辨别

  • 有的应用就仅仅是一个单exe文件,这种软件经常使用会有硬盘损耗吗
  • 一般在类似于 果核 这种下载网站上的便携软件,是否为真便携

顺便有大佬能分享制作便携应用的教程吗

假便携具体是怎样指哪种情况
通过脚本将软件路径和相关文件关联写入注册表?

制作的话有个最简单的办法:
用 7z 把安装包解压到文件夹,直接使用
但不是所有软件都适用这种方法

2 个赞

用脚本导入注册表或者写入%APPDATA%配置文件夹的不是便携软件
有配套卸载脚本的算是绿色软件

源生便携的是只在本地目录的ini或者xml之类的文本文件里写配置

然后还有个便携路线是PortableApps.com这种有个引导程序负责在运行前备份本机配置然后导入便携配置,程序关闭后备份便携配置清理后恢复原本机配置的强力伪便携

这个你搜PortableApps教程就有相关资料

然后现在有很多用7z做的号称是单文件的原理和以上有引导程序的差不多,
但是危害比较大的是这种单文件虽然有导入和删除的功能,
但是不一定有导入前备份本机设置和关闭后恢复本机设置,
最后最不能忍的是,这种假单文件每次都把程序全部释放到%temp%文件夹运行,
系统洁癖和硬盘损耗双重焦虑让我对这种单文件深恶痛绝

3 个赞

我的方式是用AHK代码,打开当前程序的所在目录,基本能判断是不是便携,如果在temp或者其它路径就是伪便携。

;Ctrl+Alt+E打开当前程序所在路径

^!E:: 
      WinGet, ProcessPath, ProcessPath, A
      Run Explorer /Select`, %ProcessPath%
      return
1 个赞

看楼主的意思,脚本化就是指运行时自动释放文件再启动程序吧?
这种程序一般都把文件释放在临时目录,关闭时会清理,也可能不清理,当然也有例外放在指定文件夹中。估计只有运行才是比较准确的辨别方法,可以放在虚拟机中跑,就很明显程序释放了哪些文件。
这类软件有部分可以通过解压软件解压后运行,就如 @allor 所说。

我个人认为真的便携软件应该是能够放在U盘中跑的,显然它应该把所有程序所需文件和配置信息都放在程序所在目录中,运行不会在系统中留下太多痕迹。

1 个赞

我一般是先丢进沙盒(Sandboxie)运行一次,然后看看有什么残留
有些沙盒内运行报错的就用 WhatChanged 查看C盘和注册表有什么改动
基本有残留的也就 %USERPROFILE%\AppData\ 和注册表的 HKCU\SOFTWARE\Classes\

便携化用的是Portableapps,还挺简单的,就是内网中文教程几乎找不到,不过多翻几个Portableapps便携化的软件也自然也就了解了,主要是在 Launcher.ini 内写上会残留的注册表和C盘文件夹的位置

快写完了才看到楼上提到的Portableapps教程,细节详细,简单易懂,我当时怎么就没搜到,白白浪费了大把时间
https://love.junzimu.com/archives/1381

再推荐一些发布绿色化软件的网站

3 个赞