用批处理给Win10家庭版增加沙盒功能
更新时间:2021-01-07 15:27:22 浏览次数:503+次Windows Sandbox:一个隔离的桌面环境,您可以在其中运行不受信任的软件,而不必担心会对设备造成持久的影响。Windows 沙箱中安装的所有软件仅保留在沙箱中,不会影响您的主机。关闭 Windows 沙箱后,所有软件及其所有文件和状态将被永久删除。
启用 Windows 沙盒后,将自动创建一个没有驱动器号的只读 8 GB PortableBaseLayer 系统分区,并且不应将其删除。禁用 Windows 沙箱后,将自动删除 PortableBaseLayer 分区。
Windows 的一部分: Windows 10 专业版和企业版中包含了此功能所需的全部内容。 无需下载 VHD。
Pristine:每次运行 Windows 沙盒时,它都是 Windows 全新安装的全新安装。
可处置:设备上不存在任何内容。 当用户关闭应用程序时,所有内容都会被丢弃。
安全:使用基于硬件的虚拟化进行内核隔离。 它依赖 Microsoft 虚拟机管理程序来运行隔离来自主机的 Windows 沙盒的单独内核。
高效: 使用集成的内核计划程序、智能内存管理和虚拟 GPU。
Windows 10 专业版、企业版或教育版内部版本18305或更高版本 目前在家庭 sku 上不受支持 (Windows 沙箱)
AMD64 体系结构
BIOS 中启用的虚拟化功能
至少 4 GB RAM (建议使用 8 GB)
至少 1 GB 的可用磁盘空间 (已推荐 SSD)
至少有两个 CPU 核心 (四核,其中建议使用超线程)
您必须以管理员身份登录才能启用 Windows Sandbox。如果您打开了“受控文件夹访问”,则需要暂时将其关闭,直到完成 Windows Sandbox 的启用为止。
复制以下代码,新建空白文本文件并粘贴保存,更改 .txt 后缀修改为 .bat 使其更改为一个批处理文件。选择批处理文件,右键,以管理员身份运行。
@echo?off echo?检查权限 >nul?2>&1?"%SYSTEMROOT%\system32\cacls.exe"?"%SYSTEMROOT%\system32\config\system" echo?权限检查结果:%errorlevel% REM?-->?如果设置了错误标志,则没有管理员权限。 if?'%errorlevel%'?NEQ?'0'?( echo?正在请求管理员权限... goto UACPrompt )?else?(?goto gotAdmin?) :UACPrompt echo?Set UAC?=?CreateObject^("Shell.Application"^)?>?"%temp%\getadmin.vbs" echo?UAC.ShellExecute?"%~s0",?"",?"",?"runas",?1?>>?"%temp%\getadmin.vbs" echo?正在运行创建的临时文件?"%temp%\getadmin.vbs" timeout?/T?2 "%temp%\getadmin.vbs" exit?/B :gotAdmin if?exist?"%temp%\getadmin.vbs"?(?del?"%temp%\getadmin.vbs"?) pushd?"%CD%" CD?/D?"%~dp0" echo?使用管理员权限成功启动批处理 echo?. cls Title Sandbox Setup pushd?"%~dp0" dir?/b?%SystemRoot%\servicing\Packages\*Containers*.mum?>sandbox.txt for?/f?%%i in?('findstr /i . sandbox.txt 2^>nul')?do?dism?/online?/norestart?/add-package:"%SystemRoot%\servicing\Packages\%%i" del sandbox.txt Dism?/online?/enable-feature?/featurename:Containers-DisposableClientVM?/LimitAccess?/ALL pause
现在将打开命令提示符窗口,以在 Windows 10 家庭版上安装 Windows Sandbox 功能。 完成后,在出现提示时键入 Y,然后按 Enter 重新启动计算机以进行应用。
提示:在键入 Y 并按 Enter 重新启动计算机之前,请确保保存并关闭所有内容,以防止丢失重要工作文件。
在命令提示符下卸载 Windows Sandbox 功能
A)按 Win + R 键打开运行,在运行中键入 OptionalFeatures.exe,然后单击/点击确定以打开 Windows 功能。
B)取消选中 Windows Sandbox,然后单击/点击确定。
或者您也可以使用以下方法
A)按 Win + R 键打开运行,在运行中键入 CMD,按 Ctrl + Shift + Enter 打开命令提示符。
B)复制下面的命令并将其粘贴到提升的命令提示符中,然后按Enter。
Dism?/online?/Disable-Feature?/FeatureName:"Containers-DisposableClientVM"
C)当系统提示您重新启动计算机时,请键入 Y。
重新启动计算机之前,请确保保存并关闭所有内容,以防止丢失重要工作文件。
复制以下代码,新建空白文本文件并粘贴保存,更改 .txt 后缀修改为 .bat 使其更改为一个批处理文件。选择批处理文件,右键,以管理员身份运行。
@echo?off echo?检查权限 >nul?2>&1?"%SYSTEMROOT%\system32\cacls.exe"?"%SYSTEMROOT%\system32\config\system" echo?权限检查结果:%errorlevel% REM?-->?如果设置了错误标志,则没有管理员权限。 if?'%errorlevel%'?NEQ?'0'?( echo?正在请求管理员权限... goto UACPrompt )?else?(?goto gotAdmin?) :UACPrompt echo?Set UAC?=?CreateObject^("Shell.Application"^)?>?"%temp%\getadmin.vbs" echo?UAC.ShellExecute?"%~s0",?"",?"",?"runas",?1?>>?"%temp%\getadmin.vbs" echo?正在运行创建的临时文件?"%temp%\getadmin.vbs" timeout?/T?2 "%temp%\getadmin.vbs" exit?/B :gotAdmin if?exist?"%temp%\getadmin.vbs"?(?del?"%temp%\getadmin.vbs"?) pushd?"%CD%" CD?/D?"%~dp0" echo?使用管理员权限成功启动批处理 echo?. cls Title Sandbox Installer pushd?"%~dp0" Dism?/online?/disable-feature?/featurename:Containers-DisposableClientVM dir?/b?%SystemRoot%\servicing\Packages\*Containers*.mum?>sandbox.txt for?/f?%%i in?('findstr /i . sandbox.txt 2^>nul')?do?dism?/online?/norestart?/remove-package:"%SystemRoot%\servicing\Packages\%%i" del sandbox.txt pause
如果您使用的是物理计算机,请确保在 BIOS 中启用了虚拟化功能。
如果你使用的是虚拟机,请运行以下 PowerShell 命令以启用嵌套的虚拟化:
VMProcessor-VMName?<VMName>?-ExposeVirtualizationExtensions?$true
使用任务栏上的搜索栏并键入 “打开和关闭 Windows 功能 “,以访问 “Windows 可选功能” 工具。 选择 ” Windows 沙盒 “,然后选择 “确定”。 如果出现提示,请重新启动计算机。
如果 Windows 沙盒 选项不可用,则你的计算机不满足运行 Windows 沙盒的要求。
在 “开始” 菜单上找到并选择 ” Windows 沙盒 ” 以首次运行它。