Pular para o conteúdo principal
Versão: v2.3.0

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:

  1. Baixar
  2. Incorporar
  3. Navegador
  4. 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.

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.