Existem algumas limitações dos convidados do Windows, mas para executar um aplicativo convidado no modo transparente a partir de um script que pode ser colocado em um inicializador, testamos o seguinte procedimento:
- Iniciar gerenciador de caixas virtuais
- Faça login no Windows com seu usuário e senha
- Alternar para o modo contínuo Host + L
- No modo contínuo, salve o estado da máquina
Agora podemos obter o controle total da linha de comando sobre a máquina virtual com os seguintes comandos:
-
Inicie a máquina virtual a partir do estado de gravação contínuo
VBoxManage startvm "<Name_of_VM>"
ou (para o frontend do Qt)
VirtualBox --startvm "<Name_of_VM>"
-
Executa uma aplicação na VM
VBoxManage --nologo guestcontrol "<Name_of_VM>" run --exe "C:\full\path\to\program.exe" --username windowsuser --password password --wait-stdout
-
Encerra a VM no estado de salvamento
VBoxManage controlvm "Name_of_VM" savestate
Coloque-os em um script para aproveitar as janelas de aplicativos do Windows no seu desktop Ubuntu.
Caso você tenha configurado um logon do Windows sem senha, isso não funcionará. Veja no Manual do Virtual Box as limitações e como configurar o Windows para que funcione.
"Além disso, para usar contas sem ou com uma senha vazia, a política de grupo do convidado deve ser alterada. Para fazer isso, abra o editor de política de grupo na linha de comando digitando gpedit.msc, abra a chave Configuração do Computador \ Windows Configurações \ Configurações de Segurança \ Políticas Locais \ Opções de Segurança e altere o valor de Contas: Limite o uso de senhas em branco da conta local para o logon do console apenas para Desativado. "