介绍
和 winrar 自带的 自解压
功能不同,自解压的本质其实是将几个文件制作成一个压缩包,只是这个压缩包的格式是 exe ,运行这个 exe 后,一般会把文件解压缩到 %temp%
这个目录,之后在退出程序时再将这个目录下的文件清理掉,这个过程一般对用户是透明的。
而 Enigma Virtual Box 属于虚拟文件打包系统,不会释放文件到硬盘,所以它的打开速度要比自解压打包的 exe 启动快。
官网下载:https://enigmaprotector.com/en/downloads.html
使用方法
先选择主程序(不着急选附带的其他文件)
再定义导出文件的路径
添加其他附属文件(如果添加文件夹的话就选添加文件夹)
弹出的对话框默认点确定即可
最后点击文件选项,勾选压缩文件
最后点执行封包,在导出目录里即可找到封装好的单文件
踩坑点
我打包单文件的主程序是 C# (any cpu),在启动子程序(x64)时总是提示找不到文件错误,启动另一个子程序(x86)时大部分情况下正常,但也有极少数情况下失败,失败时不提示找不到文件而是直接导致主进程崩溃。
后来修改 C# 的 any cpu 选项为 x64 即可成功启动 x64 子进程和 x86 子进程 , 但如果以 x86 编译 C# ,则只能启动 x86 子进程而不能启动 x64 子进程(错误依然是找不到文件)