5
0
mirror of https://github.com/wailsapp/wails.git synced 2025-05-05 02:59:14 +08:00
wails/website/i18n/ja/docusaurus-plugin-content-docs/current/guides/windows.mdx
github-actions[bot] 4cd873fecb
docs: sync documents (#2443)
Co-authored-by: misitebao <misitebao@users.noreply.github.com>
2023-03-11 17:57:56 +11:00

62 lines
4.0 KiB
Plaintext

# Windows
このページでは、Windows向けのWailsアプリケーション開発に関する、様々なガイドを掲載しています。
## WebView2ランタイム依存関係のハンドリング
Windows用にビルドされたWailsアプリケーションは、Microsoft [WebView2ランタイム](https://developer.microsoft.com/en-us/microsoft-edge/webview2/)がランタイム要件となっています。 Windows 11ではデフォルトでこのランタイムがインストールされていますが、一部のマシンではインストールされていません。 Wailsでは、この依存関係に対処するための簡単なアプローチを提供しています。
ビルド時に`-webview2`フラグを使用することで、アプリ起動時に適切なランタイムが検出されない場合(インストールされているランタイムが古すぎる場合を含む) に、アプリケーションがどのように動作するかを指定できます。 次の4つのオプションがあります:
1. Download
2. Embed
3. Browser
4. Error
### Download
このオプションでは、適切なランタイムが見つからない旨をユーザに知らせ、MicrosoftのWebView2のサイトからダウンロードされる公式のブートストラッパを実行する提案をします。 ユーザが続行を選択した場合、公式のブートストラッパがダウンロードおよび実行されます。
### Embed
このオプションでは、アプリケーション内に公式のブートストラッパの埋め込みます。 適切なランタイムが見つからない場合、アプリケーションはブートストラッパの実行を提案します。 これにより、バイナリサイズが150k程度増えます。
### Browser
このオプションでは、適切なランタイムが見つからない旨をユーザに知らせ、ブートストラッパをダウンロードしてインストールすることのできるWebView2の公式ページをブラウザで開く提案をします。 続行した場合、アプリケーションは終了し、インストールをユーザに委ねます。
### Error
このオプションでは、適切なランタイムが見つからない場合、ユーザにエラーが表示され、それ以上何の処理も実行しません。
## フィックスドバージョンランタイム
WebView2の依存関係に対処するための別手段として、自身でランタイムを運ぶという方法が挙げられます。 [フィックスドバージョンランタイム](https://developer.microsoft.com/microsoft-edge/webview2/#download-section)をダウンロードしてバンドルするか、アプリケーション内でランタイムをダウンロードするようにします。
また、Wailsの起動時に`windows.Options`において、フィックスドバージョンWebView2ランタイムのパスを指定する必要があります。
```go
wails.Run(&options.App{
Windows: &windows.Options{
WebviewBrowserPath: "",
},
})
```
注意: `WebviewBrowserPath`が指定されている場合、必要な最低バージョンを満たしていなかったり、ランタイムへのパスが無効であったりすると、強制的に`error`オプションの挙動となります。
## 他のプログラムの起動
スクリプトなどの他のプログラムを起動すると、当該プログラムのウィンドウが画面に表示されます。 このウィンドウを表示させたくない場合は、次のコードを使用してください:
```go
cmd := exec.Command("your_script.exe")
cmd.SysProcAttr = &syscall.SysProcAttr{
HideWindow: true,
CreationFlags: 0x08000000,
}
cmd.Start()
```
この解決策は、[ディスカッションボード](https://github.com/wailsapp/wails/discussions/1734#discussioncomment-3386172)内で[sithembiso](https://github.com/sithembiso)により示されました。