샘플 구성 파일 Windows 샌드박스
예제 1 - 샌드박스에서 폴더 매핑 및 알 수 없는 다운로드 파일 테스트
다음 구성 파일을 사용하여 샌드박스 내에서 알 수 없는 다운로드한 파일을 쉽게 테스트할 수 있습니다. 이 테스트를 수행하려면 네트워킹 및 vGPU가 비활성화되고 샌드박스는 호스트에서 다운로드 폴더에 대한 읽기 전용 액세스가 허용되며 샌드박스의 'temp' 폴더 내에 배치됩니다. 편의를 위해 로그온 명령은 시작 시 샌드박스 내에 다운로드 폴더를 엽니다.
Downloads.wsb
<Configuration>
<VGpu>Disable</VGpu>
<Networking>Disable</Networking>
<MappedFolders>
<MappedFolder>
<HostFolder>C:\Users\Public\Downloads</HostFolder>
<SandboxFolder>C:\temp</SandboxFolder>
<ReadOnly>true</ReadOnly>
</MappedFolder>
</MappedFolders>
<LogonCommand>
<Command>explorer.exe C:\temp</Command>
</LogonCommand>
</Configuration>
예제 2 - 샌드박스에서 시작할 때 Visual Studio Code 설치
다음 구성 파일은 샌드박스에 Visual Studio Code 설치합니다. 이 경우 약간 더 복잡한 LogonCommand 설정이 필요합니다.
두 개의 폴더가 샌드박스에 매핑됩니다. 첫 번째 (SandboxScripts
)에는 Visual Studio Code 설치하고 실행하는 VSCodeInstall.cmd 포함되어 있습니다. 두 번째 폴더(CodingProjects
)는 개발자가 Visual Studio Code 사용하여 수정하려는 프로젝트 파일을 포함하는 것으로 간주됩니다.
이미 샌드박스에 매핑된 Visual Studio Code 설치 관리자 스크립트를 사용하여 에서 <LogonCommand>
참조할 수 있습니다.
VSCodeInstall.cmd
이 일괄 처리 파일은 호스트의 C:\SandboxScripts
디렉터리에 만들어야 합니다. VS Code를 샌드박스 내의 폴더에 temp
다운로드하고 폴더에서 temp
설치를 실행합니다.
REM Download Visual Studio Code
curl -L "https://update.code.visualstudio.com/latest/win32-x64-user/stable" --output C:\temp\vscode.exe
REM Install and run Visual Studio Code
C:\temp\vscode.exe /verysilent /suppressmsgboxes
VSCode.wsb
<Configuration>
<MappedFolders>
<MappedFolder>
<HostFolder>C:\SandboxScripts</HostFolder>
<SandboxFolder>C:\temp\sandbox</SandboxFolder>
<ReadOnly>true</ReadOnly>
</MappedFolder>
<MappedFolder>
<HostFolder>C:\CodingProjects</HostFolder>
<SandboxFolder>C:\temp\Projects</SandboxFolder>
<ReadOnly>false</ReadOnly>
</MappedFolder>
</MappedFolders>
<LogonCommand>
<Command>C:\temp\sandbox\VSCodeInstall.cmd</Command>
</LogonCommand>
</Configuration>
예제 3 - 폴더 매핑 및 PowerShell 스크립트를 로그온 명령으로 실행
Windows 11 버전 24H2부터 Windows 샌드박스 호스트 시스템의 마우스 설정을 준수합니다. 이전 빌드에 있고 호스트 시스템이 왼손 마우스를 사용하도록 설정된 경우 Windows 샌드박스 시작할 때 Windows 샌드박스 이러한 설정을 수동으로 적용해야 합니다. 또는 샌드박스 구성 파일을 사용하여 로그온 명령을 실행하여 마우스 설정을 교환할 수 있습니다.
이 예제에서는 호스트의 C:\sandbox
폴더가 샌드박스의 C:\sandbox
폴더에 매핑되므로 SwapMouse.ps1
샌드박스 구성 파일에서 스크립트를 참조할 수 있습니다.
SwapMouse.ps1
다음 코드를 사용하여 PowerShell 스크립트를 만들고 디렉터리에 로 SwapMouse.ps1
저장 C:\sandbox
합니다.
[Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms") | Out-Null
$SwapButtons = Add-Type -MemberDefinition @'
[DllImport("user32.dll")]
public static extern bool SwapMouseButton(bool swap);
'@ -Name "NativeMethods" -Namespace "PInvoke" -PassThru
$SwapButtons::SwapMouseButton(!([System.Windows.Forms.SystemInformation]::MouseButtonsSwapped))
SwapMouse.wsb
<Configuration>
<MappedFolders>
<MappedFolder>
<HostFolder>C:\sandbox</HostFolder>
<SandboxFolder>C:\sandbox</SandboxFolder>
<ReadOnly>True</ReadOnly>
</MappedFolder>
</MappedFolders>
<LogonCommand>
<Command>powershell.exe -ExecutionPolicy Bypass -File C:\sandbox\SwapMouse.ps1</Command>
</LogonCommand>
</Configuration>