Configuracion avanzada de Windows Sandbox

En un post anterior comento como instalar y la utilizacion basica de Windows Sandbox.

Si comenzamos a utilizarlo habitualmente, veremos que debido a la reinicializacion total, estaremos repitiendo ciertos pasos cada vez que iniciamos la aplicacion.

Para evitar algunos de estos pasos repetitivos, podemos utilizar un archivo de configuracion. Windows Sandbox nos permite escribir archivos de configuracion, formateados como XML, los mismos utilizan la extension .wsb.

Utilizando cualquier editor de texto que nos permita trabajar con texto plano, podemos crear nuestro archivo de configuracion.

En el siguiente archivo de configuracion de ejemplo, vemos las opciones que tenemos disponibles, como la posibilidad de mapear una carpeta de la maquina host en una carpeta del Sandbox, o ejecutar un comando en el sandbox luego de que inicia. En el ejemplo, estamos ademas iniciando la instalacion de Visual Studio Community 2022 que ya tenemos previamente descargado en la computadora host.

<Configuration>
    <vGPU>Default</vGPU><!--Enable|Disable|Default-->
    <Networking>Default</Networking><!--Disable|Default-->
    <MappedFolders>
        <MappedFolder> 
            <HostFolder>D:\VS\Preview\Community2022</HostFolder><!--absolute path to the host folder-->
            <SandboxFolder>C:\VS</SandboxFolder><!--absolute path to the sandbox folder-->
            <ReadOnly>false</ReadOnly> <!--true|false-->
        </MappedFolder>
    </MappedFolders>
    <LogonCommand>
        <Command>C:\VS\vs_community.exe --passive --norestart --includeOptional</Command> <!--command to be invoked-->
    </LogonCommand>
    <AudioInput>Default</AudioInput><!--Enable|Disable|Default-->
    <VideoInput>Default</VideoInput><!--Enable|Disable|Default-->
    <ProtectedClient>Default</ProtectedClient><!--Enable|Disable|Default-->
    <PrinterRedirection>Default</PrinterRedirection><!--Enable|Disable|Default-->
    <ClipboardRedirection>Default</ClipboardRedirection><!--Disable|Default-->
    <MemoryInMB>4096</MemoryInMB>
</Configuration>

Luego de guardar el archivo en nuestro disco local con la extension .wsb podemos hacer doble click sobre el mismo, lo que iniciara Windows Sandbox y cargara las opciones establecidas.

Podemos de esta manera tener distintos archivos de configuracion que nos daran acceso a diferentes configuraciones de prueba en forma muy rapida y sencilla.

Aqui les dejo el enlace a la documentacion oficial para que puedan ver los detalles de los distintos parametros.

Json formatting for debug using powershell, jq and Visual Studio Code

When I’m debugging applications, I usually need to check some JSON responses.

If you only want to see the formatted JSON, you can use jq with PowerShell (BTW I installed jq using chocolatey), running the following PowerShell command in your terminal:

get-clipboard|jq

But usually, I have a considerable chunk of JSON data, and I want to be able to interact with the tree and collapse it.

To do that, I can create a PowerShell script with the following snippet and save it in a folder included in my path and then call it from a PowerShell prompt after copying the JSON to the clipboard.

$clipboardFile = "$env:TEMP\clipboard.json"
get-clipboard > $clipboardFile|code $clipboardFile

For example, I created the file jtoc.ps1 in my c:\windows folder, and I can copy the following JSON to the clipboard {"Hello":"json formatter","Using":"vs code"} and then use jtoc in the terminal and it will open in vs code, then I use ALT+SHIFT+F to format the text.

I hope this was useful and a better way to check your JSON data.