Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WebView2 Initialization Error in WinPE x64 #4951

Open
Abithk7-1 opened this issue Nov 27, 2024 Discussed in #4947 · 0 comments
Open

WebView2 Initialization Error in WinPE x64 #4951

Abithk7-1 opened this issue Nov 27, 2024 Discussed in #4947 · 0 comments

Comments

@Abithk7-1
Copy link

Discussed in #4947

Originally posted by Abithk7-1 November 26, 2024
I'm experiencing an issue with WebView2 initialization in our WinPE x64 environment.

The error I'm encountering is:
System.Runtime.InteropServices.COMException (0x80080005): Server execution failed (Exception from HRESULT: 0x8008005 (CO_E_SERVER_EXEC_FAILURE)) at System.Runtime.InteropServices.Marshal.ThrowExceptionForHRInternal(Int32 errorCode, IntPtr errorInfo) at Microsoft.Web.WebView2.Core.CoreWebView2Environment.d__102.MoveNext()

Environment:
WinPE x64
Framework: 4.8.1
I'm using the following nuget libraries:

  • Microsoft.Web.WebView2.Core.dll
  • Microsoft.Web.WebView2.Winforms.dll
  • Microsoft.Web.WebView2.WPF.dll
    The WebView2 Fixed Version Runtime binaries I'm using is:
  • Microsoft.WebView2.FixedVersionRuntime.130.0.2849.56.x64

My code for initializing WebView2 is as follows:
string exeLocation = AppDomain.CurrentDomain.BaseDirectory;
string webView2Folder = Path.Combine(exeLocation, "WebView2x64");
string logFilePath = Path.Combine(exeLocation, "WebView2Log.txt");
string userDataFolder = Path.Combine(exeLocation, "UserData");

        try
        {

            // Create WebView2 environment with logging enabled
            var environment = await CoreWebView2Environment.CreateAsync(
                browserExecutableFolder: webView2Folder,
                userDataFolder: userDataFolder,
                options: new CoreWebView2EnvironmentOptions("--enable-logging --v=1"));
            // Initialize WebView2 with the environment
            await webView.EnsureCoreWebView2Async(environment);
            webView.CoreWebView2.Navigate(Url);
            // Log a success message
            Log( "WebView2 initialized successfully.");
        }
        catch (Exception ex)
        {
            // Log any initialization errors
            Log($"Error initializing WebView2: {ex.ToString()}");
        }

The folder structure for the WebView2 libraries is as follows:

<myApp>
\Microsoft.Web.WebView2.Core.dll
\Microsoft.Web.WebView2.Winforms.dll
\Microsoft.Web.WebView2.WPF.dll
\runtimes
\win-arm64\native\WebView2Loader.dll (arm64)
\win-x64\native\WebView2Loader.dll (x64)
\win-x86\native\WebView2Loader.dll (x86)

  </div>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant