Testen anstehender APIs und Features

Um anstehende APIs und Features zu testen, wechseln Sie wie folgt zu einem Vorschaukanal.

Updates der WebView2 Evergreen Runtime enthalten häufig neue APIs und Features. Einige dieser Updates könnten Ihre WebView2-App möglicherweise beeinträchtigen. Um die experimentellen APIs im Voraus zu testen und die Vorwärtskompatibilität Ihrer App sicherzustellen, sollten Sie Kompatibilitätstests mit einem Vorschaukanal von Microsoft Edge zusammen mit einer Vorabversion des WebView2 SDK durchführen.

Wenn Sie ein Vorabversions-SDK-Paket testen, müssen Sie Ihre Anwendung anweisen, einen Vorschaukanal von Microsoft Edge (Beta, Dev oder Canary) zu verwenden, anstatt standardmäßig die WebView2-Runtime zu verwenden. Im Folgenden werden verschiedene Ansätze dazu erläutert.

Die WebView2-Runtime verfügt nicht über die neuesten experimentellen WebView2-APIs. Damit Ihr WebView2-Code ausgeführt werden kann, wenn experimentelle APIs in einem Vorabversions-SDK verwendet werden, muss Ihr Client (auf einem Entwicklungscomputer) über einen Microsoft Edge-Vorschaukanal verfügen. Der Canary-Vorschaukanal wird empfohlen, da er den anderen Kanälen voraus ist und über die neuesten experimentellen APIs verfügt.

Das Vorabversions-SDK arbeitet wie folgt mit einem Vorschaukanal zusammen:

  • Eine Vorabversion des WebView2 SDK enthält die Methodensignaturen für experimentelle APIs, mit denen Sie Code mithilfe der experimentellen WebView2-APIs in Ihrer App schreiben können.

  • Die Vorschaukanäle von Microsoft Edge enthalten die Microsoft Edge-Binärdateien, die zum Ausführen und Rendern Ihrer App benötigt werden, einschließlich der Implementierung der experimentellen APIs.

Weitere Informationen zur Funktionsweise von SDK-Versionen in Verbindung mit der WebView2-Runtime oder den Vorschaukanälen von Microsoft Edge finden Sie unter Grundlegendes zu den verschiedenen WebView2 SDK-Versionen.

Herunterladen des Vorabversions-SDK und eines Vorschaukanals

Um experimentelle APIs zu verwenden, laden Sie eine Vorabversion des WebView2 SDK aus dem Microsoft.Web.WebView2-Paket herunter.

Informationen zum Herunterladen eines Microsoft Edge-Vorschaukanals finden Sie unter Microsoft Edge-Insider-Kanäle.

Ansätze zur Verwendung eines bestimmten Browserkanals für Ihre App

Wenn eine WebView2 initialisiert wird, wird versucht, eine gültige Runtime auf dem zu verwendenden Computer zu finden. Dies kann die WebView2-Runtime, ein Vorschaukanal von Microsoft Edge oder ein angegebener Speicherort sein, der binärdateien mit fester Version enthält. Weitere Informationen zu unterstützten Runtimes finden Sie unter Verteilen Ihrer App und der WebView2-Runtime.

Es gibt mehrere Möglichkeiten, ihre WebView2-App dazu zu bringen, einen angegebenen Vorschaukanal von Microsoft Edge zu verwenden:

  • Durch Aufrufen einer Funktion.
  • Mithilfe einer Registrierungsüberschreibung.
  • Mithilfe einer Umgebungsvariablen.
  • Mithilfe einer Gruppenrichtlinie.

Diese Ansätze werden unten beschrieben.

Ausführbarer Browserordner

Ein Ansatz besteht darin, einen ausführbaren Browserordner zu verwenden. Bei diesem Ansatz geben Sie einen Ordner an, der Laufzeitbinärdateien enthält. Dieser Ordner kann einer der folgenden Speicherorte sein:

  • Der installierte Speicherort der WebView2-Runtime.
  • Ein Vorschaukanal von Microsoft Edge.
  • Ein Ordner mit festen Versionsbinärdateien, die Sie selbst auf dem Computer bereitgestellt haben.

Wenn Sie den ausführbaren Browserordner auf einen bestimmten Vorschaukanal von Microsoft Edge festlegen, müssen Sie den Speicherort aktualisieren, wenn dieser Vorschaukanal auf eine neuere Version aktualisiert wird. Dies liegt daran, dass der Speicherort die Versionsnummer als Teil des Pfads enthält. Daher wird empfohlen, diesen Ansatz nur für lokale Tests zu verwenden.

Standardreihenfolge für die Kanalsuche

Dieser Abschnitt gilt für die Verwendung einer Gruppenrichtlinie, einer Registrierungsüberschreibung oder einer Umgebungsvariablen.

Wenn kein bestimmter ausführbarer Browserordner angegeben ist, versucht WebView2, eine Runtime von einem der bekannten Standardspeicherorte zu laden.

Die Standardreihenfolge für die Kanalsuche lautet:

  1. Die WebView2-Runtime.
  2. Der Betakanal von Microsoft Edge.
  3. Der Dev-Kanal von Microsoft Edge.
  4. Der Canary-Kanal von Microsoft Edge.

Wenn Sie die Einstellung für den Releasekanal auf 1 festlegen, indem Sie eine Gruppenrichtlinie, Eine Registrierungsüberschreibung oder eine Umgebungsvariable verwenden, wird dies die Umkehrung der Standardsuchreihenfolge verwenden.

Aufrufen einer Funktion

Wenn Sie ihre Anwendung dazu bringen möchten, eine bestimmte Laufzeit zu verwenden, indem Sie eine Funktion aufrufen, führen Sie die folgenden Schritte aus.

Win32/C++

Wir verwenden webView2APISample , um dieses Verfahren zu veranschaulichen.

  1. Suchen Sie auf Ihrem Entwicklungscomputer den Pfad, der den Microsoft Edge-Vorschaukanal enthält. Beispiel:

    C:\\Users\\myname\\AppData\\Local\\Microsoft\\Edge SxS\\Application\\93.0.929.0

  2. Klonen Sie das WebView2Samples-Repository .

  3. Öffnen Sie das WebView2APISample-Projekt , und öffnen Sie dann unter Quelldateien die AppWindow.cpp Datei.

  4. Ermitteln Sie, wo CreateCoreWebView2EnvironmentWithOptions aufgerufen wird. Beispiel:

    HRESULT hr = CreateCoreWebView2EnvironmentWithOptions(
        subFolder, m_userDataFolder.c_str(), options.Get(),
        Callback<ICoreWebView2CreateCoreWebView2EnvironmentCompletedHandler>(
            this, &AppWindow::OnCreateEnvironmentCompleted)
            .Get());
    
  5. Ersetzen Sie die subFolder Variable durch den Ordnerpfad für den Microsoft Edge-Vorschaukanal, den Sie verwenden möchten. Beispiel:

    HRESULT hr = CreateCoreWebView2EnvironmentWithOptions(
        L"C:\\Users\\myname\\AppData\\Local\\Microsoft\\Edge SxS\\Application\\93.0.929.0", m_userDataFolder.c_str(), options.Get(),
        Callback<ICoreWebView2CreateCoreWebView2EnvironmentCompletedHandler>(
            this, &AppWindow::OnCreateEnvironmentCompleted)
            .Get());
    

Winforms

WinForms verwendet einen Ansatz, der dem oben beschriebenen Win32/C++-Ansatz ähnelt.

  1. Legen Sie fest CreationProperties.BrowserExecutableFolder , um auf den Pfad zu zeigen, der den Microsoft Edge Canary- oder Dev-Kanal enthält. Öffnen Sie dazu in der WebView2Samples-Projektmappe im Projekt WebView2WpfBrowser die Datei MainWindow.xaml.cs.

  2. Suchen Sie CreationProperties.BrowserExecutableFoldernach . Beispiel:

    WebView2 GetReplacementControl(bool useNewEnvironment)
    {
       WebView2 replacementControl = new WebView2();
       ((System.ComponentModel.ISupportInitialize)(replacementControl)).BeginInit();
       // Setup properties and bindings.
       if (useNewEnvironment)
       {
          // Create a new CoreWebView2CreationProperties instance so the environment
          // is made anew.
          replacementControl.CreationProperties = new CoreWebView2CreationProperties();
          replacementControl.CreationProperties.BrowserExecutableFolder = webView.CreationProperties.BrowserExecutableFolder;
          replacementControl.CreationProperties.Language = webView.CreationProperties.Language;
          replacementControl.CreationProperties.UserDataFolder = webView.CreationProperties.UserDataFolder;
          shouldAttachEnvironmentEventHandlers = true;
       }
    

WPF

WPF verwendet einen Ansatz, der dem oben beschriebenen Win32/C++-Ansatz ähnelt.

Weitere Informationen finden Sie unter CoreWebView2CreationProperties.BrowserExecutableFolder-Eigenschaft.

Verwenden einer Registrierungsüberschreibung

Wenn Sie einen Vorschaukanal mithilfe einer Registrierungsüberschreibung angeben, gibt es zwei Optionen:

  • Ändern Sie den ausführbaren Ordner des Browsers.
  • Ändern Sie die Einstellung für den Releasekanal.

Diese beiden Ansätze werden unten beschrieben.

Registrierungsüberschreibung: ausführbarer Browserordner

So verwenden Sie für Ihre Anwendung einen Microsoft Edge-Vorschaukanal mithilfe einer Registrierungsüberschreibung, die den ausführbaren Ordner des Browsers festlegt:

  1. Öffnen Sie ein PowerShell-Terminal oder eine PowerShell-fähige Eingabeaufforderung.

  2. Ändern Sie den folgenden Befehl, und führen Sie diesen aus:

    REG ADD HKLM\Software\Policies\Microsoft\Edge\WebView2\BrowserExecutableFolder /v WebView2APISample.exe /t REG_SZ /d "C:\Users\myname\AppData\Local\Microsoft\Edge SxS\Application\88.0.680.0"

    Ersetzen Sie durch WebView2APISample.exe den Dateinamen Ihrer eigenen ausführbaren App oder die Anwendungsbenutzermodell-ID. Wenn Sie einen Platzhalter (*) als Wertnamen verwenden, wird die Außerkraftsetzung auf alle WebView2-Apps auf dem Computer angewendet, was zu unerwartetem Verhalten führen kann.

    Ersetzen Sie durch C:\Users\myname\AppData\Local\Microsoft\Edge SxS\Application\88.0.680.0 den Pfad zum gewünschten Microsoft Edge-Vorschaukanal.

Fortsetzen mit der Standardeinstellung WebView2 Evergreen Runtime

Führen Sie den folgenden Befehl aus, um die obige Einstellung rückgängig zu machen:

REG DELETE HKLM\Software\Policies\Microsoft\Edge\WebView2\BrowserExecutableFolder /f

Außerkraftsetzung der Registrierung: Einstellung des Releasekanals

So verwenden Sie für Ihre Anwendung einen Microsoft Edge-Vorschaukanal mithilfe einer Registrierungsüberschreibung, die die Einstellung des Releasekanals ändert, indem Sie die Reihenfolge der Suche nach einem Kanal ändern:

  1. Öffnen Sie ein PowerShell-Terminal oder eine PowerShell-fähige Eingabeaufforderung.

  2. Ändern Sie den folgenden Befehl, und führen Sie diesen aus:

    REG ADD HKLM\Software\Policies\Microsoft\Edge\WebView2\ReleaseChannelPreference /v WebView2APISample.exe /t REG_SZ /d "1"

    Ersetzen Sie durch WebView2APISample.exe den Dateinamen Ihrer eigenen ausführbaren App oder die Anwendungsbenutzermodell-ID. Wenn Sie einen Platzhalter (*) als Wertnamen verwenden, wird die Außerkraftsetzung auf alle WebView2-Apps auf dem Computer angewendet, was zu unerwartetem Verhalten führen kann.

Fortsetzen mit der Standardeinstellung WebView2 Evergreen Runtime

Führen Sie den Folgenden Befehl aus, um die ReleaseChannelPreference Außerkraftsetzung der Registrierung zu löschen:

REG DELETE HKLM\Software\Policies\Microsoft\Edge\WebView2\ReleaseChannelPreference /f

Verwenden einer Umgebungsvariablen

So verwenden Sie für Ihre Anwendung einen Microsoft Edge-Vorschaukanal mithilfe einer Umgebungsvariablen:

  1. Geben Sie in der Windows-Suchleiste "Umgebung" ein, und wählen Sie dann Systemumgebungsvariablen bearbeiten aus.

    Verwenden der Windows-Suchleiste, um zu ermitteln, wo Umgebungsvariablen bearbeitet werden sollen

  2. Wählen Sie im Dialogfeld Systemeigenschaften die Registerkarte Erweitert und dann die Schaltfläche Umgebungsvariablen aus.

    Schaltfläche

  3. Wählen Sie im Abschnitt Benutzervariablen des Dialogfelds Umgebungsvariablendie Option Neu aus.

  4. Legen Sie im Dialogfeld Neue Benutzervariable den Variablennamen auf WEBVIEW2_BROWSER_EXECUTABLE_FOLDERfest, und legen Sie den Variablenwert auf den Pfad zu Ihrem bevorzugten Browserkanal oder binärdateien mit fester Version fest.

    Legen Sie alternativ den Variablennamen auf WEBVIEW2_RELEASE_CHANNEL_PREFERENCEfest, und legen Sie den Variablenwert auf fest 1 , um die Suchreihenfolge umzukehren, um zuerst Vorschaukanäle (Beta, Dev oder Canary) zu verwenden. Ein beliebiger Wert außer 1 gibt die Standardsuchreihenfolge an.

  5. Klicken Sie auf OK , um die Dialogfelder zu schließen.

    Hinzufügen einer neuen Umgebungsvariablen als Benutzervariable

Welche App betroffen ist

Der obige Ansatz legt die Umgebungsvariable für alle WebView2-Apps fest, nicht nur für die App, die Sie testen. Wenn Sie diese Umgebungsvariable nur für die WebView2-App festlegen möchten, die Sie testen, legen Sie die Umgebungsvariable WEBVIEW2_RELEASE_CHANNEL_PREFERENCE=1fest, wenn Sie Ihre App über die Eingabeaufforderung ausführen. Dadurch wird die Umgebungsvariable nur für den aktuellen cmd.exe Eingabeaufforderungsprozess und für alle neuen untergeordneten Prozesse aus diesem cmd.exe instance festgelegt. Anschließend gilt die Umgebungsvariable nur für die WebView2-App, die Sie testen.

Wenn Sie die Umgebungsvariable WEBVIEW2_RELEASE_CHANNEL_PREFERENCE verwenden, können Sie sie auf die folgenden Werte festlegen.

Wert Beschreibung
1 Kehrt die Suchreihenfolge um, um zuerst Vorschaukanäle vor der WebView2-Runtime zu verwenden.
0 oder ein anderer Wert außer 1 Verwendet die Standardreihenfolge für die Kanalsuche, d. h., die WebView2-Runtime vor den Vorschaukanälen zu verwenden.

Anwenden der neuen Umgebungsvariablen auf ausgeführte Prozesse

Nach dem Festlegen einer Umgebungsvariablen wird die Umgebungsvariable auf alle neuen Prozesse angewendet, die erstellt werden. Die Umgebungsvariable gilt nicht für Prozesse, die bereits ausgeführt werden. Um sicherzustellen, dass alle Prozesse die neue Umgebungsvariable verwenden, müssen Sie Visual Studio möglicherweise neu starten oder sich von Windows abmelden und dann erneut anmelden.

Verwenden einer Gruppenrichtlinie

Wenn Sie für Ihre Anwendung einen Microsoft Edge-Vorschaukanal mithilfe einer Gruppenrichtlinie verwenden möchten, kopieren Sie ADMX- und ADML-Dateien wie folgt in den PolicyDefinitions Ordner.

  1. Laden Sie die Richtliniendateien unter Microsoft Edge für Unternehmen herunterladen und bereitstellen herunter.

  2. Kopieren Sie die ADMX-Datei in einen Vorlagenordner für Richtliniendefinitionen, z C:\Windows\PolicyDefinitions. B. .

  3. Kopieren Sie die ADML-Datei in einen entsprechenden Gebietsschemaordner innerhalb des Policy Definitions Ordners, z. B. in einen C:\Windows\PolicyDefinitions\en-us Ordner.

  4. Öffnen Sie die lokale Gruppenrichtlinie Editor. Geben Sie dazu in der Windows-Suchleiste "Gruppenrichtlinie" ein, und wählen Sie dann Gruppenrichtlinie bearbeiten aus.

  5. Erweitern Sie Richtlinie für lokale Computer und dann Computerkonfiguration oder Benutzerkonfiguration. Erweitern Sie dann Administrative Vorlagen>Microsoft Edge WebView2.

    Dialogfeld

  6. Wählen Sie Ausführbarer Browserordner aus. Die folgenden Screenshots gelten für das Festlegen des ausführbaren Browserordners. Alternativ können Sie release channel preference (Releasekanaleinstellung) auswählen, die ähnliche Dialogfelder verwendet.

    Festlegen des ausführbaren Ordners des Browsers

  7. Wählen Sie die Schaltfläche Anzeigen aus.

  8. Füllen Sie das Dialogfeld Inhalt anzeigen aus. Geben Sie in der Spalte Wertname den .exe Dateinamen ihrer App oder die Anwendungsbenutzermodell-ID ein. Wenn Sie einen Platzhalter (*) als Wertnamen verwenden, wird die Außerkraftsetzung auf alle WebView2-Apps auf dem Computer angewendet, was zu unerwartetem Verhalten führen kann.

    Dialogfeld

  9. Wählen Sie OK aus, um die Dialogfelder zu schließen.

Weitere Informationen finden Sie unter Konfigurieren von Microsoft Edge-Richtlinieneinstellungen.