Compartir a través de


Espacio aislado de Windows archivos de configuración de ejemplo

Ejemplo 1: Asignación de carpetas y prueba de un archivo descargado desconocido en un espacio aislado

El siguiente archivo de configuración se puede usar para probar fácilmente archivos descargados desconocidos dentro de un espacio aislado. Para lograr esta prueba, se deshabilitan las redes y vGPU, y se permite el acceso de solo lectura al espacio aislado a la carpeta de descargas desde el host y se coloca dentro de una carpeta "temp" en el espacio aislado. Para mayor comodidad, el comando de inicio de sesión abre la carpeta de descargas dentro del espacio aislado cuando se inicia.

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>

Ejemplo 2: Instalación de Visual Studio Code al iniciarse en un espacio aislado

El siguiente archivo de configuración instala Visual Studio Code en el espacio aislado, lo que requiere una configuración de LogonCommand algo más compleja.

Dos carpetas se asignan al espacio aislado; el primer (SandboxScripts) contiene VSCodeInstall.cmd, que instala y ejecuta Visual Studio Code. Se supone que la segunda carpeta (CodingProjects) contiene archivos de proyecto que el desarrollador desea modificar mediante Visual Studio Code.

Con el script del instalador de Visual Studio Code ya asignado al espacio aislado, puede hacer referencia a <LogonCommand> él.

VSCodeInstall.cmd

Este archivo por lotes debe crearse en el C:\SandboxScripts directorio del host. Descarga VS Code en la temp carpeta dentro del espacio aislado y ejecuta la instalación desde la temp carpeta .

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>

Ejemplo 3: Asignación de carpetas y ejecución de un script de PowerShell como comando de inicio de sesión

A partir de Windows 11, versión 24H2, Espacio aislado de Windows se adhiere a la configuración del mouse del sistema host. Si está en una compilación anterior y si el sistema host está configurado para usar un mouse izquierdo, debe aplicar esta configuración en Espacio aislado de Windows manualmente cuando se inicie Espacio aislado de Windows. Como alternativa, puede usar un archivo de configuración de espacio aislado para ejecutar un comando de inicio de sesión para intercambiar la configuración del mouse.

En este ejemplo, la C:\sandbox carpeta del host se asigna a la C:\sandbox carpeta del espacio aislado, por lo que se puede hacer referencia al SwapMouse.ps1 script en el archivo de configuración del espacio aislado.

SwapMouse.ps1

Cree un script de PowerShell con el código siguiente y guárdelo en el C:\sandbox directorio como SwapMouse.ps1.

[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>