Windows Sandbox 隔离全家桶
使用 windows sandbox 隔离微信/qq/迅雷/百度网盘…
资料来源:
https://docs.microsoft.com/en-us/powershell/module/international/set-winuserlanguagelist?view=windowsserver2019-ps
https://jdhitsolutions.com/blog/powershell/7621/doing-more-with-windows-sandbox/更新
1
2021.09.30 初始
导语
自从 N 年前,开发环境因为 QQ 崩溃,重装耗时 1 个星期以后,全家桶应用就告别我电脑了.但是人在江湖又不得不用…
这是 Windows Sandbox 下使用 微信/qq/迅雷/等等的总结帖.
正文
需求
- 正常运行 微信/qq/迅雷~~(废话)~~
- 尽量持久化用户数据.
Windows Sandbox
Windows Sandbox
- 可以运行起一个与宿主机隔离的 windows 环境.
- 基于 hyper-v ,启动比虚拟机快很多,这也是我选择 Windows Sandbox 而不是用虚拟机的原因
- 无法直接持久化文件,每次启动都会是一个全新的环境.
- 全局只能有一个实例.
更多介绍请参考官方文档.
ps: Windows Sandbox 也支持 vgpu,也就是说除了 fps 类,其他游戏也是能正常调用 gpu 运行的.
windows sandbox 支持 配置文件定制,这也是这篇文章核心的内容.官方文档
全家桶应用
一般就是 微信 QQ 迅雷 和 百度网盘 了,你可以不用,可以抵不住周围人都在用.
适用于 sandbox 的是全家桶应用的绿色版.
微信/QQ 可以参考 官方绿色版(提取 win32 转制应用)
迅雷
- 目前个人下到的极速版 U享版,几乎都没一点速度,只能换到迅雷11.
- 目前个人用的是 迅雷11绿色去广告精简版,扔到 virustotal 没有报毒.
百度网盘,个人已经弃用.有需要也可以到 yeyulingfeng下到,请注意 使用前扔到 virustotal看看.
持久化数据
微信:
C:\Users\WDAGUtilityAccount\AppData\Roaming\Tencent
C:\Users\WDAGUtilityAccount\Documents
QQ:
C:\Users\WDAGUtilityAccount\Documents
在配置文件 保存上面两个路径到宿主机就行.
QQ 运行还单独需要挂载 C:\Windows\SysWOW64
迅雷就没有持久化数据的必要了.
最好还是单独挂载一下桌面文件夹,放一些快捷方式.
中文输入法
即使宿主机是中文, sandbox 输入法也没有中文,微信/qq 略显不变.
中文输入法可以手动找回在 设置->时间和语言->语言: 添加语言->添加中文简体
powershell 可以通过 Set-WinUserLanguageList
添加语言.参考 Set-WinUserLanguageList
新建脚本文件 addzh-cn.ps1
1 | $LanguageList = Get-WinUserLanguageList |
sandbox 的环境还是不能直接执行 ps1,先设置脚本执行权限.这一块写成 cmd.sandbox-setup.cmd
,假设 addzh-cn.ps1
挂载到了 C:\scripts\addzh-cn.ps1
powershell.exe -command "&{Set-ExecutionPolicy RemoteSigned -force}"
powershell.exe -file C:\scripts\addzh-cn.ps1>)
sandbox 配置文件支持执行脚本 sandbox-setup.cmd
配置文件
最后得到了下面的配置文件
1 | <Configuration> |
这样每次启动都有一个隔离的全家桶环境了