这个思路不错,不过不大明白“在用户profile目录里还是会残留一些文件,做不到完全的portable”指的是什么意思。
其实根据这个思路,可以用多种方式实现,最直接就是利用windows脚本实现,例如写个fx.vbs:
代码
set oShell= WScript.CreateObject("Wscript.Shell")
set oEnv = oShell.Environment("PROCESS")
oEnv("USERPROFILE") = "D:\MyFx"
oShell.Run("""D:\MyFx\Firefox\Installed\firefox.exe""")
不过美中不足的是MS就会同时在D:\MyFx创建cookie、Favorites这些文件。
如果用autoit(国内很多人用来制作自动安装程序或者当按键精灵用)可以写脚本:
代码
EnvSet("USERPROFILE", @ScriptDir )
Run(@ScriptDir & "\" & "firefox.exe", @ScriptDir)
编译后仅百来K,不过运行时仍然会在Fx的目录里创建一个Favorites目录。