Windows
Esta página tem guias diversos relacionados ao desenvolvimento de aplicativos Wails para Windows.
Manipulando a dependência de runtime WebView2,
Aplicativos de Wails feitos para Windows possuem uma exigência de tempo de execução na Microsoft Runtime WebView2. Windows 11 terá isto instalado por padrão, mas algumas máquinas não. O Wails oferece uma abordagem fácil para lidar com esta dependência.
Usando a flag -webview2
ao realizar o build, você pode decidir o que sua aplicação fará quando não for detectado um tempo de execução adequado (incluindo se o tempo de execução instalado for muito antigo). As quatro opções são:
- Baixar
- Incorporar
- Navegador
- Erro
Baixar
Esta opção irá solicitar ao usuário que nenhum tempo de execução adequado foi encontrado e, em seguida, oferecer para baixar e executar o bootstrapper oficial no site WebView2 da Microsoft. Se o usuário continuar, o bootstrapper oficial será baixado e executado.
Incorporar
Esta opção incorpora o bootstrapper oficial dentro do aplicativo. Se nenhum tempo de execução adequado for encontrado, o aplicativo oferecerá para executar o bootstrapper. Isto adiciona ~150k ao tamanho do binário.
Navegador
Esta opção pedirá ao usuário que nenhum tempo de execução adequado foi encontrado e, em seguida, oferecerá para abrir um navegador na página oficial WebView2, onde o bootstrapper pode ser baixado e instalado. O aplicativo irá então sair, deixando a instalação para o usuário.
Erro
Se não for encontrado um tempo de execução adequado, um erro é dado ao usuário e nenhuma ação foi feita.
Execução da versão fixa
Outra forma de lidar com a dependência webview2 é enviando-a você mesmo. Você pode baixar versão fixa em tempo de execução e empacotar ou baixá-lo com seu aplicativo.
Além disso, você deve especificar o caminho para a versão fixa do tempo de execução webview2 nas windows.Options
structure ao iniciar wails.
wails.Run(&options.App{
Windows: &windows.Options{
WebviewBrowserPath: "",
},
})
Observação: Quando WebviewBrowserPath
é especificado a estratégia error
seráforçada em caso de exigência de versão mínima ou erros na busca do runtime.
Gerando outros programas
Ao gerar outros programas, tais como scripts, você verá a janela aparecer na tela. Para ocultar a janela, você pode usar o seguinte código:
cmd := exec.Command("your_script.exe")
cmd.SysProcAttr = &syscall.SysProcAttr{
HideWindow: true,
CreationFlags: 0x08000000,
}
cmd.Start()
Solução fornecida pelo sithembiso no quadro de discussões.