次の方法で共有


WebView2 ブラウザー フラグ

Microsoft Edge WebView2 と対話し、動作に影響を与える方法の 1 つは、ブラウザー フラグ (引数、またはスイッチ) を WebView2 に渡すことです。 これらのブラウザー フラグは、今後の機能のテストや問題の診断に役立ちます。

運用アプリの場合は、これらのフラグを使用しないでください。 開発中に、フラグが存在する場合は、以下に指定した動作が結果になります。

警告

運用環境のアプリでは WebView2 ブラウザー フラグを使用しないでください。これらのフラグは、いつでも削除または変更される可能性があり、必ずしも長期的にサポートされるとは限りません。

一般に、フラグは Chromium と Microsoft Edge の両方によって所有されます。 Chromiumフラグは Microsoft Edge によって所有または制御されていないため、Microsoft Edge では、フラグの動作でフラグを削除または変更するタイミングや方法を制御できません。

ローカル デバイス環境でブラウザー フラグを設定したり、コードを使用してブラウザー フラグをプログラムで設定したりできます。 どちらの方法も以下で説明します。

ローカル デバイス環境でのブラウザー フラグの設定

今後の機能をテストしたり、問題を診断したりするには、 WEBVIEW2_ADDITIONAL_BROWSER_ARGUMENTS 環境変数を設定するか、レジストリ キーを使用して、ローカル デバイス環境でブラウザー フラグを使用することをお勧めします。 詳細については、「Win32 API リファレンス: CreateCoreWebView2EnvironmentWithOptions」を参照してください。

コードを使用してブラウザー フラグをプログラムで設定する

ローカル デバイス環境でブラウザー フラグを設定する代わりに、ブラウザー フラグをプログラムで設定し、ブラウザー フラグを CoreWebView2EnvironmentOptionsAdditionalBrowserArguments プロパティとして渡す方法もあります。 ブラウザー フラグをプログラムで設定する場合は、アプリを配布する前にコード内のフラグを削除して、運用環境でフラグが誤って出荷されないようにしてください。

使用可能な WebView2 ブラウザー フラグ

開発中は、次の WebView2 ブラウザー フラグを使用できます。

運用アプリの場合は、これらのフラグを使用しないでください。 開発中に、フラグが存在する場合は、以下に指定した動作が結果になります。

Flag 説明
accept-lang Navigator.language DOM プロパティを使用して、サーバーに送信して JavaScript に公開するAccept-Languageを指定します。 形式は language[-country]で、 language は ISO-639 の 2 文字のコードです。
allow-file-access-from-files 他のfile:// URI からfile:// URI を読み取ることができます。
allow-insecure-localhost localhost の TLS/SSL エラーを無視して、スポットが行われず、要求のブロックが行われないようにします。
allow-run-as-system 既定では、Edge WebView ブラウザーはシステムとして起動すると終了します (システムとして起動することはお勧めしません)。 このフラグは、そのチェックバイパスされるため、Edge WebView ブラウザーがシステムとして起動されても、Edge WebView ブラウザーは終了しません。
allow-running-insecure-content キャスト Web ランタイムで安全でないコンテンツを有効にします。 このフラグは、HTTP ソースからのコンテンツを提供する MSP のブロックを解除します。
auto-open-devtools-for-tabs Edge WebView で各タブの DevTools ウィンドウが自動的に開きます。開発者と自動化で使用します。
AutofillReplaceCachedWebElementsByRendererIds AutofillAgent と FormTracker のキャッシュされた Web 要素をレンダラー ID で置き換えます。
autoplay-policy 自動再生ポリシーを設定するコマンド ライン フラグ名。
BlockInsecurePrivateNetworkRequests この機能を有効にすると、 public アドレス空間内のセキュリティで保護されていないコンテキストから開始されたプライベート ネットワーク要求がブロックされます。
block-new-web-contents trueまたはfalse値を受け取ります。 true場合、すべてのポップアップと呼び出しが失敗window.openfalse場合は、ポップアップとwindow.openへの呼び出しが適用されます。
BreakoutBoxPreferCaptureTimestampInVideoFrames WebView2 Runtime バージョン 124 以前の従来の動作と一致するように、CoreWebView2Texture クラスの Timestamp プロパティの動作を元に戻します。
disable-background-timer-throttling バックグラウンド ページからのタイマー タスクのタスク調整を無効にします。
disable-domain-action-user-agent-override ドメイン アクション機能からドメインごとのユーザー エージェントのオーバーライドを無効にします。
disable-gpu GPU ハードウェア アクセラレータを無効にします。 ソフトウェア レンダラーが配置されていない場合、GPU プロセスは起動しません。
disable-gpu-driver-bug-workarounds さまざまな GPU ドライバーのバグの回避策を無効にします。
disable-site-isolation-trials サイトの分離を無効にします。
disable-web-security クロスオリジン ポリシーを無効にし、同じ配信元ポリシーを適用しません。 Web サイトのテストにのみ使用します。
disk-cache-size ディスク キャッシュによって使用される最大ディスク領域を強制的にバイト単位で指定します。
do-not-de-elevate 起動時に WebView2 の昇格を解除できないようにします。 昇格解除後に、無限ループを防ぐために使用されます。
edge-webview-debugging-script スクリプト PostWebMessage 非同期的に実行します。
edge-webview-enable-mojo-ipcz WebView2 を使用するアプリの MojoIpcz (mojo-ipcz) を有効にします。
edge-webview-foreground-boost-opt-in フォアグラウンド ブーストにオプトインします。
edge-webview-foreground-boost-opt-out フォアグラウンド ブーストからオプトアウトします。
edge-webview-force-personal-context Edge WebView ブラウザー プロセスを WIP 個人用コンテキストで強制的に実行します。
edge-webview-interactive-dragging ポインター イベントとフォーカス イベントを、 --app-region: drag 属性を持つ要素で発生できるようにします。 ドラッグ要素は既定で対話型です。
edge-webview-disable-interactive-dragging --app-region: drag属性を持つ要素でポインター イベントとフォーカス イベントが発生しないようにします。 このフラグが設定されていない場合、ドラッグ要素は既定で対話型です。
edge-webview-is-background WebView がバックグラウンドで起動されていることを示します。
edge-webview-no-dpi-workaround "DPI 対応アプリの互換性 shim" 回避策を無効にします。これにより、シェルを介して Edge WebView ブラウザー プロセスが起動され、プロセスが "app compat" shim を継承しないようにします。
edge-webview-run-with-package-id ブリッジされたデスクトップ アプリのパッケージ ID (パッケージ ID) を使用して WebView プロセスを実行します。
edge-webview-run-without-package-id ブリッジされたデスクトップ アプリのパッケージ ID (パッケージ ID) なしで WebView プロセスを実行します。
embedded-browser-webview-dpi-awareness サーバー側プロセスの DPI 認識レベルを設定します。
enable-experimental-web-platform-features 開発中の Web プラットフォーム機能を有効にします。
enable-logging エラー レベルでログ記録を有効にします。
force-color-profile 指定したカラー プロファイルがあるかのように、すべてのモニターを強制的に処理します。 有効な値: srgbgeneric-rgb
force-device-scale-factor Edge WebView ブラウザー UI とコンテンツのデバイス スケール ファクターをオーバーライドします。
force-fieldtrials ローカルで変更をテストするときにフィールドトライアルを強制するために使用できます。 引数は、スラッシュで区切られた名前と値のペアのリストです。 試用版名のプレフィックスにアスタリスクが付いている場合、その試用版がアクティブ化されます。 例: 次の引数は 2 つの試用版を定義し、2 つ目の試用版はアクティブ化されます: EdgeNow/Enable/*MaterialDesignNTP/Default/。 このオプションをブラウザー プロセスで使用して、同じ形式を使用して、ブラウザー以外のプロセスに試用版の一覧を送信することもできます。
force-fieldtrial-params ローカルで変更をテストするときにフィールド 試行のパラメーターを強制するために使用できます。 引数は (キー、値) ペアのパラメーター リストで、関連付けられた (試用版、グループ) ペアのプレフィックスが付いています。 複数の (試用版、グループ) ペアの場合は、コンマ区切り記号を使用します。
force-renderer-accessibility スクリーン リーダーが検出されたときにレンダラーアクセシビリティをオンデマンドで有効にするのではなく、レンダラーのアクセシビリティを強制的にオンにするかどうか。 disable-renderer-accessibility フラグが存在する場合、disable-renderer-accessibility フラグはこのフラグをオーバーライドします。
HardwareMediaKeyHandling メディアを制御するためのハードウェア メディア キーの処理を有効にします。
ignore-certificate-errors 証明書関連のエラーを無視します。
ignore-gpu-blocklist GPU ブロックリストを無視するかどうか。
incognito ユーザー データ ディレクトリが --user-data-dir フラグを使用して指定されている場合でも、InPrivate (Incognito) モードを強制します。
isolate-origins コンマ区切りリストとして指定された一連の配信元に対して専用プロセスを必要とします。 例: --isolate-origins=https://www.foo.com,https://www.bar.com
js-flags JS エンジンに渡されるフラグを指定します。 使用可能なフラグ: scavenger_max_new_space_capacity_mb: V8 JavaScript エンジンのスカベンジャー (マイナー) ガベージ コレクターの上限 (MB 単位) を指定します。
スカベンジャー メモリの制限を低くすると、メモリ使用量が減少し、マイナー ガベージ コレクターを実行する頻度が増加します。
スカベンジャー メモリの制限が高いほど、メモリ使用量が増加し、マイナー ガベージ コレクターを実行する頻度が減ります。 例: --js-flags=--scavenger_max_new_space_capacity_mb=8
lang WebView2 が開こうとする言語ファイル。 言語が ISO-639 の 2 文字コードであるフォーム言語 [-country] の。
log-net-log ファイルへのネット ログ イベントの保存を有効にします。 値が指定されている場合、その値はディレクトリ パスとファイル名として使用されます。 値が指定されていない場合、ファイルには netlog.json という名前が付けられ、ユーザー データ ディレクトリに配置されます。
long-animation-frame-timing 標準の 16.67 ミリ秒 (60fps) を超えるフレームである長いアニメーション フレームの詳細なタイミングを提供します。 これは、デバッグとパフォーマンス分析中に、アニメーションが多いアプリケーションのパフォーマンスのボトルネックを特定して最適化するのに役立ちます。
msAbydos "手書きテキスト変換" エクスペリエンスを有効にします。
msAbydosGestureSupport ユーザーがジェスチャ (スクラッチアウト ジェスチャなど) を使用して、ペンを使用してテキストを削除できるようにします。 msAbydos フラグが有効になっている場合にのみ有効です。
msAbydosHandwritingAttr DOM レベルの入力要素に対して "手書きテキスト変換" エクスペリエンスが有効になっているかどうか。 msAbydos フラグが有効になっている場合にのみ有効です。
msAllowAmbientAuthInPrivateWebView2 このフラグは、既定の資格情報フローまたはアンビエント認証フローでシングル サインオン (SSO) を有効にするために、 msSingleSignOnForInPrivateWebView2 ブラウザー フラグと共に使用されます。
msEdgeDesignerUI Designerショアライン アプリを有効にします。 Designer Shoreline アプリは、WebView2 ではサポートされていません。
msEdgeHubAppDesigner Designerショアライン アプリを有効にします。 Designer Shoreline アプリは、WebView2 ではサポートされていません。
msEdgeDesignerDriverFix コンテンツを取得し、Designer機能を自動的に表示できるようにします。 Designer機能は、WebView2 ではサポートされていません。
msEdgeFluentOverlayScrollbar Fluent Overlay スクロール バーを強制的に有効にし、現時点で保持できる値 kFluentScrollbar オーバーライドします。
msEdgeDevToolsWdpRemoteDebugging リモート デバッグを有効にします。 「WebView2 WinUI 2 (UWP) アプリのリモート デバッグWindows デバイスのリモート デバッグ」を参照してください。
msEdgeWebViewApplyWebResourceRequestedFilterForOOPIFs AddWebResourceRequestedFilter メソッド (オーバーロードを含む) をプロセス外の iframe にも適用します。
.NET: AddWebResourceRequestedFilter
WinRT: AddWebResourceRequestedFilter
Win32: AddWebResourceRequestedFilterWithRequestSourceKinds
msEnhancedTextContrast 他のネイティブ Windows アプリケーションの品質と明瞭さに合わせて、テキスト コントラストの強化とガンマ補正を改善します。 このフラグを使用すると、フォント レンダリングでは、テキスト コントラストの強化とガンマ補正を適用するときに、ユーザーの ClearType チューナー設定が尊重されます。
msEnhancedTrackingPreventionEnabled 追跡ドメインと認識されているドメインに存在する Cookie や Web 要求のブロックなど、ネイティブのプライバシー保護機能を有効にします。
msFloatyMode trueまたはfalse値を受け取ります。 true場合は、Floaty 機能を有効にします。 false場合は、Floaty 機能を無効にします。 WebView ではブラウザーの保持実験がサポートされていないため、このフラグを使用して Floaty 機能を無効にします。
msFloatyShouldHonorIndiaHoldout trueまたはfalse値を受け取ります。 true場合は、インドのホールドアウト グループを尊重します。 false場合、WebView はブラウザー保持実験をサポートしていないため、ユーザーがインドのホールドアウト グループの一部である場合に有効になっている Floaty 機能を無効にします。
msOverlayScrollbarWinStyle Fluent スクロール バーのオーバーレイ モードと非オーバーレイ モードをユーザーが変更できるかどうか。
msPdfEnableAsPreview この機能により、PDF ビューアーは最小限のツール バーと読み取り専用プレビュー モードで起動できます。
msSingleSignOnForInPrivateWebView2 このフラグにより、WebView2 の InPrivate (Incognito) セッションのシングル サインオン (SSO) フローが有効になります。 InPrivate (Incognito) モードでブラウザー ベースの SSO を有効にします。
msSingleSignOnOSForPrimaryAccountIsShared プライマリ OS アカウントの情報を使用して、任意のアカウントを使用して Microsoft Web ページに暗黙的にサインインできるようにします。
msSmartScreenProtection SmartScreen 保護を使用できるようにします。
msUseSpellCheckCorrectionsCard ユーザーがスペルミスの単語をクリックしたときに、UI カード修正が表示されます。
msWebView2BrowserHitTransparent マウスとキーボードのイベントが WebView2 コントロールを基になるアプリに渡して、アプリがイベントを処理する WebView2 コントロールではなく、これらのイベントを処理できるようにします。 このフラグが有効になっていない場合、WebView2 コントロールはマウスイベントとキーボードイベントを処理します。イベントは基になるアプリに渡されません。 このフラグを使用すると、アプリが入力イベントを直接処理する必要があるシナリオで、WebView2 コントロールが入力イベントをインターセプトしない場合にアプリがどのように動作するかをテストできます。 このフラグは値を受け取りません。 このフラグにより、アプリがクラッシュまたはフリーズする可能性があります。
msWebView2CancelInitialNavigation 起動時のパフォーマンスを向上させるために、WebView2 の初期ナビゲーションを取り消します。
msWebView2CodeCache SetVirtualHostNameToFolderMapping経由で WebView2 アプリに読み込まれる JavaScript リソースを作成するか、バイトコード キャッシュの対象add_WebResourceRequestedします。これにより、3 回目以降の読み込みが高速化されます。 この機能により、DevTools ネットワーク インターセプト メカニズムを使用してカスタム応答を提供するその他のコンポーネントのバイトコード キャッシュも可能になります。 「ネットワーク要求のカスタム管理」を参照してください。
msWebView2EnableDownloadContentInWebResourceResponseReceived ダウンロードされるナビゲーションの応答を WebResourceResponseReceivedで使用できるようにします。
msWebView2TextureStream キャプチャまたは構成されたビデオ フレームを WebView2 コントロールにストリーミングできます。このコントロールでは、JavaScript が W3C 標準 DOM API ( Video Embed 要素MediaStream など) を介してフレームをレンダリングまたは操作できます。
msWebView2EnableDraggableRegions trueまたはfalse値を受け取ります。 true場合、WebView2 内の Web ページで app-region: drag\|nodrag CSS スタイルを使用できるようになります。これにより、そのスタイルを持つ要素がタイトル バーのように動作します。 false場合、またはこのフラグがない場合、app-region: drag\|nodrag CSS スタイルは効果がありません。
msWebView2NativeEventDispatch ネイティブ mojo 接続を使用して、Web メッセージなどの内部イベントをレンダラー プロセスにディスパッチします。
msWebView2SimulateMemoryPressureWhenInactive 非アクティブな WebView のメモリ負荷をシミュレートします。
msWebView2TreatAppSuspendAsDeviceSuspend すべての WebView が中断されると、WebView2 はアプリをデバイスが中断されたかのように扱い、遅延したすべてのタスクとタイマーを一時停止します。
no-proxy-server 渡されるその他のプロキシ サーバー フラグをオーバーライドします。
net-log-capture-mode ネットワーク ログでキャプチャするイベントの粒度を設定します。 有効な値: DefaultIncludeSensitiveEverything
no-network-profile-warning UDF がネットワーク共有上にあるかどうかをブラウザーに警告させます。 このフラグは Windows でのみサポートされています。このフラグは、他のプラットフォームでは無視されます。
no-sandbox 通常サンドボックス化されているすべてのプロセスの種類のサンドボックスを無効にします。 テスト目的でのみブラウザー レベルのフラグとして使用されることを意味します。
no-first-run 実際に最初の実行であるかどうかに関係なく、First-Run タスクをスキップし、[新機能] ページの表示をスキップします。 このフラグは、 kForceFirstRun (First-Run エクスペリエンス (FRE) の場合) と kForceWhatsNew (新機能の表示) によってオーバーライドされます。 このフラグは First Run Sentinel を削除しないため、このフラグなしで次に Edge WebView ブラウザーを起動した場合に First-Run エクスペリエンスが発生するのを防ぐわけではありません。 このフラグでは、最後の [新着情報] マイルストーンは更新されないため、このフラグなしで Edge WebView ブラウザーが次回起動したときに新着情報が表示されるのを防ぐわけではありません。
PartitionedCookies Partitioned属性を使用して、サイトがトップレベル サイトによって Cookie をパーティション分割することをオプトインできるようにします。 パーティション分割された Cookie は、ブラウザーが Cookie が設定されたときと同じトップレベル サイト上にある場合にのみ送信されます。
proxy-auto-detect プロキシ自動検出を強制します。
proxy-bypass-list プロキシ設定がバイパスされるホストの一覧。指定したホストは、代わりに直接接続を使用します。 --proxy-serverも指定されていない限り、このフラグは無視されます。 複数のホストをコンマ区切りリストとして指定できます。
proxy-server システム設定をオーバーライドするプロキシ サーバー。 このフラグは、HTTP 要求と HTTPS 要求にのみ影響します。
remote-allow-origins 指定された配信元からの Web ソケット接続のみを有効にします。 * ワイルドカードを使用すると、任意の配信元を使用できます。
remote-debugging-port 指定したポートで HTTP 経由でリモート デバッグを有効にします。
RendererAppContainer レンダラーの AppContainerを有効にします。
Restart Microsoft Edge WebView2 ブラウザー プロセスが再起動されたことを示します (フラグの変更後など)。 このフラグを使用して、 Launch.Mode2 メトリックを記録するときに起動を無視します。
sdsm-state "Super Duper Secure Mode" 状態。 有効な値: offbasicbalancedstrict
SharedArrayBuffer SharedArrayBuffer スレッドが存在することを示します。
SpareRendererForSitePerProcess Edge Webview スペア レンダラー プロセスで、最新の要求された BrowserContextに対してウォーム スペア レンダラー プロセスが常に実行されるようにします。 この機能は、サイトごとのプロセス モードでのみ参照されます。
ThirdPartyStoragePartitioning IndexedDBCacheStorageなどのサード パーティ製ストレージの最上位サイトによるパーティション分割を有効にして、フィンガープリントを減らします。
unsafely-treat-insecure-origin-as-secure 指定された (安全でない) 配信元を安全な配信元として扱います。 複数の配信元をコンマ区切りリストとして指定できます。 セキュリティで保護されたコンテキストの定義については、「セキュリティで保護されたコンテキスト」セクションを参照してください。「origin信頼できる可能性がありますか?」を参照してください。 例: --unsafely-treat-insecure-origin-as-secure=http://a.test,http://b.test
use-fake-device-for-media-stream メディア Streamの偽のデバイスを使用して、実際のカメラとマイクを置き換えます。
use-fake-ui-for-media-stream メディア ストリームの既定のデバイス (WebRTC など) を選択して、メディア ストリーム情報バーをバイパスします。 --use-fake-device-for-media-streamで動作します。 代わりに --auto-accept-camera-and-microphone-capture を使用することを好みます。これは、ブラウザー タブのキャプチャなど、画面キャプチャとは対話しません。
use-system-proxy-resolver WinHttp を使用して、WebView2 の通常のプロキシ解決ロジックを使用する代わりにプロキシを解決します。 このフラグは Windows でのみサポートされています。
user-agent 既定のユーザー エージェントをカスタム ユーザー エージェントでオーバーライドするために使用される文字列。
user-data-migrated このプロセスは、ユーザー データの移行後の再起動の結果であることを示します。
UseBackgroundNativeThreadPool WebView2 ThreadPoolImpl で、ネイティブ スレッド プールの実装によってサポートされるバックグラウンド ThreadGroup が使用されます。
UseNativeThreadPool WebView2 ThreadPoolImpl で、ネイティブ スレッド プールの実装によってサポートされるフォアグラウンド ThreadGroup を使用します。
V8Maglev Maglev コンパイラを有効にします。 これは、手動でオーバーライドされた場合にのみ V8 フラグを設定します。それ以外の場合は、V8 の既定値が何であれに延期されます。

関連項目