共用方式為


WebView2 瀏覽器旗標

您可以與 Microsoft Edge WebView2 互動及影響行為的其中一種方式,就是將瀏覽器旗標傳遞 (自變數,或將) 切換至 WebView2。 這些瀏覽器旗標適用於測試即將推出的功能,以及診斷問題。

警告

生產環境中的應用程式不應該使用 WebView2 瀏覽器旗標,因為這些旗標可能會隨時移除或改變,而且不一定長期支援。

一般而言,旗標是由 Chromium 和 Microsoft Edge 所擁有。 Chromium 旗標不是由 Microsoft Edge 所擁有或控制,因此Microsoft Edge 無法控制何時或如何移除或改變旗標的行為。

您可以在本機裝置環境中設定瀏覽器旗標,或透過程式代碼以程式設計方式設定瀏覽器旗標。 以下說明這兩種方法。

在本機裝置環境中設定瀏覽器旗標

若要測試即將推出的功能或診斷問題,建議您透過設定 WEBVIEW2_ADDITIONAL_BROWSER_ARGUMENTS 環境變數或登錄機碼,在本機裝置環境中使用瀏覽器旗標。 如需詳細資訊,請參閱下列 Win32 API 參考: CreateCoreWebView2EnvironmentWithOptions

透過程式代碼以程式設計方式設定瀏覽器旗標

替代方法是以程式設計方式設定瀏覽器旗標,而不是在本機裝置環境中設定瀏覽器旗標,方法是傳遞瀏覽器旗標做為 AdditionalBrowserArgumentsCoreWebView2EnvironmentOptions屬性。 如果您以程式設計方式設定瀏覽器旗標,請務必在傳送應用程式之前移除程式代碼中的旗標,以避免不小心在生產環境中傳送旗標。

可用的 WebView2 瀏覽器旗標

以下是我們已看到使用的一些旗標。

描述
accept-lang 指定 Accept-Language 透過 Navigator.language DOM 屬性傳送至伺服器並公開至 JavaScript。 格式為 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 瀏覽器是以 System (啟動而結束,因為不建議) 系統。 此旗標會略過該檢查,因此即使Edge WebView 瀏覽器以系統身分啟動,Edge WebView 瀏覽器也不會結束。
allow-running-insecure-content 在轉換 Web 執行時間中啟用不安全的內容。 此旗標會解除封鎖從 HTTP 來源提供內容的 MSP。
auto-open-devtools-for-tabs 讓 Edge WebView 自動開啟每個索引標籤的 DevTools 視窗。供開發人員和自動化使用。
AutofillReplaceCachedWebElementsByRendererIds 如果啟用,則會以轉譯器標識符取代 AutofillAgent 和 FormTracker 中快取的 Web 元素。
autoplay-policy 用來設定自動執行原則的命令行旗標名稱。
BlockInsecurePrivateNetworkRequests 啟用此功能時,會封鎖從地址空間中 public 不安全的內容起始的專用網要求。
block-new-web-contents 如果 true為 ,則所有彈出視窗和呼叫都會 window.open 失敗。
BreakoutBoxPreferCaptureTimestampInVideoFrames 還原 類別的 Timestamp 屬性行為, CoreWebView2Texture 以符合 WebView2 運行時間 124 版和更早版本的舊版行為。
disable-background-timer-throttling 從背景頁面停用定時器工作的工作節流。
disable-domain-action-user-agent-override 從 [網域動作] 功能停用每個網域的使用者代理程式覆寫。
disable-gpu 停用 GPU 硬體加速。 如果軟體轉譯器尚未就緒,GPU 程式就不會啟動。
disable-gpu-driver-bug-workarounds 停用各種 GPU 驅動程式 Bug 的因應措施。
disable-site-isolation-trials 停用網站隔離。
disable-web-security 停用跨原始來源原則,且不會強制執行相同原始來源原則。 僅用於網站測試。
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 感知應用程式相容性填充碼」因應措施,這會透過殼層啟動Edge WebView 瀏覽器程式,讓程式不會繼承「應用程式相容性」填充碼。
edge-webview-run-with-package-id 使用封裝身分識別 (網橋桌面應用程式的套件標識碼) 來執行 WebView 進程。
edge-webview-run-without-package-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 在本機測試變更時,可用來強制進行現場試用。 自變數是名稱/值組的清單,以正斜線分隔。 如果試用版名稱前面加上星號,就會啟動該試用版。 例如,下列自變數會定義兩個試用,第二個試用已啟動: 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 強制 Incognito 模式,即使使用者資料目錄是使用 --user-data-dir 旗標指定。
isolate-origins 需要一組原始來源的專用進程,指定為逗號分隔清單。 例如:--isolate-origins=https://www.foo.com,https://www.bar.com.
js-flags 指定傳遞至 JS 引擎的旗標。
lang WebView2 想要嘗試開啟的語言檔案。 在窗體 language[-country] 中,language 是 ISO-639 中的 2 個字母代碼。
log-net-log 可將網路記錄事件儲存至檔案。 如果指定值,則會使用該值作為目錄路徑和檔名。 如果未指定任何值,檔案會命名為 netlog.json,並放在用戶資料目錄中。
msAbydos 啟用「手寫轉換文字」體驗。
msAbydosGestureSupport 可讓使用者使用筆勢 (,例如草稿手勢) 使用手寫筆刪除文字。 只有在啟用旗標時 msAbydos 才有效。
msAbydosHandwritingAttr DOM 層級的輸入元素是否啟用「手寫轉換文字」體驗。 只有在啟用旗標時 msAbydos 才有效。
msEdgeDesignerUI 使用此旗標停用 Designer 機應用程式。 WebView2 不支援此功能。
msEdgeHubAppDesigner 使用此旗標停用 Designer 機應用程式。 WebView2 不支援此功能。
msEdgeDesignerDriverFix 使用此旗標來停用取得內容,並自動顯示 Designer 功能。 WebView2 不支援此功能。
msEdgeFluentOverlayScrollbar 強制啟用 Fluent Overlay 滾動條,覆寫目前可能保留的任何值 kFluentScrollbar
msEdgeDevToolsWdpRemoteDebugging 啟用遠端偵錯。 請參閱 遠端偵錯 WebView2 WinUI 2 (UWP) 應用程式遠端偵錯 Windows 裝置
msEdgeWebViewApplyWebResourceRequestedFilterForOOPIFs 如果啟用此旗標, AddWebResourceRequestedFilter 包含多載) 方法 (也會套用至跨進程 iframe。
.NET: AddWebResourceRequestedFilter
WinRT: AddWebResourceRequestedFilter
Win32: AddWebResourceRequestedFilterWithRequestSourceKinds
msEnhancedTextContrast 改善文字對比增強功能和 Gamma 校正,以符合其他原生 Windows 應用程式的品質和清晰度。 使用此旗標時,字型轉譯會在套用文字對比度增強功能和 Gamma 校正時遵守使用者 ClearType Tuner 設定。
msEnhancedTrackingPreventionEnabled 啟用原生隱私權保護功能,例如封鎖位於已知追蹤網域之網域中的 Cookie 和 Web 要求。
msFloatyMode 如果 false為 ,則停用 Floaty 功能。 使用此旗標來停用 Floaty 功能,因為 WebView 不支援瀏覽器保留實驗。
msFloatyShouldHonorIndiaHoldout 如果 true為 ,則接受印度鑒效組。 使用此旗標,設定為 false,以停用用戶屬於印度鑒效組的 Floaty 功能,因為 WebView 不支援瀏覽器保留實驗。
msOverlayScrollbarWinStyle 使用者是否可以在 Fluent 滾動條的重疊和非重疊模式之間變更。
msPdfEnableAsPreview 此功能可讓 PDF 檢視器以最少的工具列和只讀預覽模式啟動。
msSingleSignOnOSForPrimaryAccountIsShared 如果啟用,允許使用主要OS帳戶的資訊,以隱含方式登入使用任何帳戶Microsoft網頁。
msSmartScreenProtection 如果啟用,將可使用 SmartScreen 保護。
msUseSpellCheckCorrectionsCard 如果啟用,當使用者按兩下拼錯的字組時,就會顯示新的更正卡片 UI。
msWebView2CancelInitialNavigation 如果啟用,請取消 WebView2 中的初始導覽,以改善啟動效能。
msWebView2CodeCache 啟用時,透過 或 add_WebResourceRequested 在 WebView2 應用程式SetVirtualHostNameToFolderMapping中載入的 JavaScript 資源符合位元組程式代碼快取的資格,這應該會加速第三個和後續的載入。 這項功能也可讓任何其他使用 DevTools 網路攔截機制的元件進行位元組程式代碼快取,以提供自定義回應 (請參閱自 定義管理網路要求) 。
msWebView2EnableDownloadContentInWebResourceResponseReceived 啟用時,允許下載的瀏覽回應可在 WebResourceResponseReceived
msWebView2TextureStream 如果啟用,允許將擷取或組成視訊畫面串流至 WebView2,其中 JavaScript 可以透過包含 Video 元素和 MediaStream 的 W3C 標準 DOM API 來轉譯或以其他方式與畫面互動。
msWebView2EnableDraggableRegions 如果 true為 ,則會使用 CSS 樣式來啟用 WebView2 內的 app-region: drag\|nodrag 網頁,這會導致具有該樣式的專案行為類似標題列。 如果沒有這個旗標, app-region: drag\|nodrag CSS 樣式就沒有作用。
msWebView2CodeCache 啟用時,透過 或 add_WebResourceRequested 在 WebView2 應用程式SetVirtualHostNameToFolderMapping中載入的 JavaScript 資源符合位元組程式代碼快取的資格,這應該會加速第三個和後續的載入。 此功能也可讓任何其他使用DevTools網路攔截機制來提供自定義回應的元件進行位元組程式代碼快取。
msWebView2NativeEventDispatch 如果啟用, 會使用原生 Mojo 連線來分派內部事件,例如 Web 訊息到轉譯器進程。
msWebView2SimulateMemoryPressureWhenInactive 如果啟用,則會模擬非使用中WebView的記憶體壓力。
msWebView2TreatAppSuspendAsDeviceSuspend 如果啟用,當所有 WebView 都暫停時,WebView2 會將應用程式視為裝置已暫停,並暫停所有延遲的工作和定時器。
no-proxy-server 覆寫傳遞的任何其他 Proxy 伺服器旗標。
net-log-capture-mode 設定要在網路記錄中擷取的事件粒度。 有效值:DefaultIncludeSensitive、。Everything
no-network-profile-warning 如果啟用,瀏覽器會在 UDF 位於網路共享時發出警告。 只有 Windows 才支援此旗標;在其他平臺上會忽略此旗標。
no-sandbox 針對一般為沙盒化的所有進程類型停用沙盒。 僅供測試之用,作為瀏覽器層級旗標。
no-first-run 略過 First-Run 工作,不論是否真的是第一次執行,並略過顯示新功能頁面。 First-Run Experience (FRE kForceWhatsNew) ) 和顯示新功能) ( (會覆kForceFirstRun寫此旗標。 此旗標不會卸除「初次執行」sentinel,因此不會防止下次啟動沒有此旗標的Edge WebView 瀏覽器時發生 First-Run 體驗。 此旗標不會更新最後一個新功能里程碑,因此不會防止下次啟動沒有此旗標的Edge WebView 瀏覽器時顯示新功能。
PartitionedCookies 啟用時,網站可以使用 Partitioned 屬性,選擇將其 Cookie 分割為最上層網站。 只有當瀏覽器位於設定 Cookie 時所在的同一個頂層網站上時,才會傳送分割的 Cookie。
proxy-auto-detect 強制 Proxy 自動偵測。
proxy-bypass-list 略過 Proxy 設定的主機清單;指定的主機接著會改用直接連線。 除非同時指定 ,否則 --proxy-server 會忽略此旗標。 您可以提供多部主機做為逗號分隔清單。
proxy-server 覆寫系統設定的 Proxy 伺服器。 此旗標只會影響 HTTP 和 HTTPS 要求。
remote-allow-origins 只啟用來自指定來源的 Web 套接字連線。 通 * 配符允許任何來源。
remote-debugging-port 在指定的埠上啟用透過 HTTP 的遠端偵錯。
RendererAppContainer 開啟轉譯器 AppContainer
Restart 指出Microsoft Edge WebView2 瀏覽器程式已重新啟動 (例如旗標變更) 之後。 使用此旗標可在錄製 Launch.Mode2 計量時忽略啟動。
sdsm-state 「進階複製者安全模式」狀態。 有效值:offbasic、、balancedstrict
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 來解析 Proxy,而不是使用 WebView2 的一般 Proxy 解析邏輯。 只有 Windows 才支援此旗標。
user-agent 用來使用自定義使用者代理程式覆寫預設使用者代理程式的字串。
user-data-migrated 指出此程式是用戶數據移轉之後重新啟動的乘積。
UseBackgroundNativeThreadPool 如果啟用此功能,WebView2 ThreadPoolImpl 將會使用原生線程集區實作所支援的背景 ThreadGroup。
UseNativeThreadPool 如果啟用,WebView2 ThreadPoolImpl 會使用原生線程集區實作所支援的前景 ThreadGroup
V8Maglev 啟用Maglev編譯程式。 這隻會在手動覆寫時設定 V8 旗標;否則,它會預設為 V8 預設值。

另請參閱