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

blazor+winforms start failed with FileNotFoundException #55771

Closed
1 task done
wu-yafeng opened this issue May 17, 2024 · 2 comments
Closed
1 task done

blazor+winforms start failed with FileNotFoundException #55771

wu-yafeng opened this issue May 17, 2024 · 2 comments
Labels
area-blazor Includes: Blazor, Razor Components ✔️ Resolution: Answered Resolved because the question asked by the original author has been answered. question Status: Resolved

Comments

@wu-yafeng
Copy link
Contributor

wu-yafeng commented May 17, 2024

Is there an existing issue for this?

  • I have searched the existing issues

Describe the bug

I have a very simple blazor + winform application. When I publish the project and run on my local computer, It works fine. But a error was occured while I run application on my windows server . (The message box was shown:
image

system info:

Microsoft Windows Server 2022 Datacenter 10.0.20348 暂缺 Build 20348
AMD64 Family 23 Model 49 Stepping 0 AuthenticAMD ~2595 Mhz
internal static class Program
{
	/// <summary>
	///  The main entry point for the application.
	/// </summary>
	[STAThread]
	static void Main()
	{
		// To customize application configuration such as set high DPI settings or default font,
		// see https://aka.ms/applicationconfiguration.
		ApplicationConfiguration.Initialize();
		Application.Run(new MainWindow());
	}
}

public partial class MainWindow : Form
{
	public MainWindow()
	{
		InitializeComponent();

		var services = new ServiceCollection();
		services.AddFluentUIComponents();
		services.AddBlazorWebViewDeveloperTools();
		services.AddWindowsFormsBlazorWebView();
		services.AddHttpClient();
		
		blazorWebView1.HostPage = "wwwroot\\index.html"; // once I remove this line, application start with no error!
		blazorWebView1.Services = services.BuildServiceProvider();
		blazorWebView1.RootComponents.Add<App>("#app");
	}
}

my App.razor:

<h1>Hello World</h1>

my index.html

<!DOCTYPE html>
<html lang="zh-cn">
<head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>WinFormsBlazor</title>
    <base href="/" />
    <link href="css/app.css" rel="stylesheet" />
    <link href="_content/Microsoft.FluentUI.AspNetCore.Components/Microsoft.FluentUI.AspNetCore.Components.bundle.scp.css" rel="stylesheet" />
</head>

<body>

    <div id="app">启动中...</div>

    <div id="blazor-error-ui" data-nosnippet>
        An unhandled error has occurred.
        <a href="" class="reload">Reload</a>
        <a class="dismiss">🗙</a>
    </div>
    <script src="_content/Microsoft.FluentUI.AspNetCore.Components/Microsoft.FluentUI.AspNetCore.Components.lib.module.js" type="module" async></script>
    <script app-name="SubscriptionMain" src="./_content/Microsoft.FluentUI.AspNetCore.Components/js/initializersLoader.webview.js"></script>
    <script src="_framework/blazor.webview.js"></script>
    <link href="_content/Microsoft.FluentUI.AspNetCore.Components/css/reboot.css" rel="stylesheet" />
</body>

</html>

Expected Behavior

application start sucessfully.

Steps To Reproduce

No response

Exceptions (if any)

有关调用实时(JIT)调试而不是此对话框的详细信息,
请参见此消息的结尾。

************** 异常文本 **************
System.IO.FileNotFoundException: 系统找不到指定的文件。 (0x80070002)


************** 已加载的程序集 **************
System.Private.CoreLib
    程序集版本: 8.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.5\System.Private.CoreLib.dll
----------------------------------------
SubscriptionMain
    程序集版本: 1.0.0.0
    位置: C:\Users\Administrator\Desktop\Boots\publish\SubscriptionMain.dll
----------------------------------------
System.Runtime
    程序集版本: 8.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.5\System.Runtime.dll
----------------------------------------
System.Windows.Forms
    程序集版本: 8.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\8.0.5\System.Windows.Forms.dll
----------------------------------------
System.ComponentModel.Primitives
    程序集版本: 8.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.5\System.ComponentModel.Primitives.dll
----------------------------------------
System.Windows.Forms.Primitives
    程序集版本: 8.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\8.0.5\System.Windows.Forms.Primitives.dll
----------------------------------------
System.Drawing.Primitives
    程序集版本: 8.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.5\System.Drawing.Primitives.dll
----------------------------------------
System.Collections.Specialized
    程序集版本: 8.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.5\System.Collections.Specialized.dll
----------------------------------------
Microsoft.Win32.Primitives
    程序集版本: 8.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.5\Microsoft.Win32.Primitives.dll
----------------------------------------
System.Runtime.InteropServices
    程序集版本: 8.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.5\System.Runtime.InteropServices.dll
----------------------------------------
System.Collections
    程序集版本: 8.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.5\System.Collections.dll
----------------------------------------
System.Threading
    程序集版本: 8.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.5\System.Threading.dll
----------------------------------------
System.Threading.Thread
    程序集版本: 8.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.5\System.Threading.Thread.dll
----------------------------------------
System.Diagnostics.TraceSource
    程序集版本: 8.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.5\System.Diagnostics.TraceSource.dll
----------------------------------------
System.Drawing.Common
    程序集版本: 8.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\8.0.5\System.Drawing.Common.dll
----------------------------------------
Microsoft.Extensions.DependencyInjection.Abstractions
    程序集版本: 8.0.0.0
    位置: C:\Users\Administrator\Desktop\Boots\publish\Microsoft.Extensions.DependencyInjection.Abstractions.dll
----------------------------------------
Microsoft.FluentUI.AspNetCore.Components
    程序集版本: 4.7.2.24124
    位置: C:\Users\Administrator\Desktop\Boots\publish\Microsoft.FluentUI.AspNetCore.Components.dll
----------------------------------------
Microsoft.AspNetCore.Components.WebView.WindowsForms
    程序集版本: 1.0.0.0
    位置: C:\Users\Administrator\Desktop\Boots\publish\Microsoft.AspNetCore.Components.WebView.WindowsForms.dll
----------------------------------------
Microsoft.Extensions.Http
    程序集版本: 8.0.0.0
    位置: C:\Users\Administrator\Desktop\Boots\publish\Microsoft.Extensions.Http.dll
----------------------------------------
Microsoft.Extensions.DependencyInjection
    程序集版本: 8.0.0.0
    位置: C:\Users\Administrator\Desktop\Boots\publish\Microsoft.Extensions.DependencyInjection.dll
----------------------------------------
System.ComponentModel
    程序集版本: 8.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.5\System.ComponentModel.dll
----------------------------------------
System.ObjectModel
    程序集版本: 8.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.5\System.ObjectModel.dll
----------------------------------------
Microsoft.AspNetCore.Components.Web
    程序集版本: 8.0.0.0
    位置: C:\Users\Administrator\Desktop\Boots\publish\Microsoft.AspNetCore.Components.Web.dll
----------------------------------------
Microsoft.AspNetCore.Components
    程序集版本: 8.0.0.0
    位置: C:\Users\Administrator\Desktop\Boots\publish\Microsoft.AspNetCore.Components.dll
----------------------------------------
System.ComponentModel.EventBasedAsync
    程序集版本: 8.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.5\System.ComponentModel.EventBasedAsync.dll
----------------------------------------
Accessibility
    程序集版本: 4.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\8.0.5\Accessibility.dll
----------------------------------------
Microsoft.Web.WebView2.WinForms
    程序集版本: 1.0.2151.40
    位置: C:\Users\Administrator\Desktop\Boots\publish\Microsoft.Web.WebView2.WinForms.dll
----------------------------------------
Microsoft.Web.WebView2.Core
    程序集版本: 1.0.2151.40
    位置: C:\Users\Administrator\Desktop\Boots\publish\Microsoft.Web.WebView2.Core.dll
----------------------------------------
mscorlib
    程序集版本: 4.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.5\mscorlib.dll
----------------------------------------
System.ComponentModel.TypeConverter
    程序集版本: 8.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.5\System.ComponentModel.TypeConverter.dll
----------------------------------------
System.Numerics.Vectors
    程序集版本: 8.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.5\System.Numerics.Vectors.dll
----------------------------------------
System.Drawing
    程序集版本: 8.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\8.0.5\System.Drawing.dll
----------------------------------------
System.Memory
    程序集版本: 8.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.5\System.Memory.dll
----------------------------------------
Microsoft.Win32.SystemEvents
    程序集版本: 8.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\8.0.5\Microsoft.Win32.SystemEvents.dll
----------------------------------------
Microsoft.AspNetCore.Components.WebView
    程序集版本: 8.0.0.0
    位置: C:\Users\Administrator\Desktop\Boots\publish\Microsoft.AspNetCore.Components.WebView.dll
----------------------------------------
Microsoft.Extensions.Logging
    程序集版本: 8.0.0.0
    位置: C:\Users\Administrator\Desktop\Boots\publish\Microsoft.Extensions.Logging.dll
----------------------------------------
Microsoft.JSInterop
    程序集版本: 8.0.0.0
    位置: C:\Users\Administrator\Desktop\Boots\publish\Microsoft.JSInterop.dll
----------------------------------------
Microsoft.Extensions.Logging.Abstractions
    程序集版本: 8.0.0.0
    位置: C:\Users\Administrator\Desktop\Boots\publish\Microsoft.Extensions.Logging.Abstractions.dll
----------------------------------------
Microsoft.Extensions.Options
    程序集版本: 8.0.0.0
    位置: C:\Users\Administrator\Desktop\Boots\publish\Microsoft.Extensions.Options.dll
----------------------------------------
Microsoft.Extensions.Diagnostics
    程序集版本: 8.0.0.0
    位置: C:\Users\Administrator\Desktop\Boots\publish\Microsoft.Extensions.Diagnostics.dll
----------------------------------------
System.Net.Http
    程序集版本: 8.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.5\System.Net.Http.dll
----------------------------------------
System.Diagnostics.DiagnosticSource
    程序集版本: 8.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.5\System.Diagnostics.DiagnosticSource.dll
----------------------------------------
Microsoft.Extensions.FileProviders.Abstractions
    程序集版本: 8.0.0.0
    位置: C:\Users\Administrator\Desktop\Boots\publish\Microsoft.Extensions.FileProviders.Abstractions.dll
----------------------------------------
System.Private.Uri
    程序集版本: 8.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.5\System.Private.Uri.dll
----------------------------------------
System.Collections.Concurrent
    程序集版本: 8.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.5\System.Collections.Concurrent.dll
----------------------------------------
System.Diagnostics.Tracing
    程序集版本: 8.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.5\System.Diagnostics.Tracing.dll
----------------------------------------
Microsoft.Extensions.FileProviders.Physical
    程序集版本: 8.0.0.0
    位置: C:\Users\Administrator\Desktop\Boots\publish\Microsoft.Extensions.FileProviders.Physical.dll
----------------------------------------
Microsoft.Extensions.Primitives
    程序集版本: 8.0.0.0
    位置: C:\Users\Administrator\Desktop\Boots\publish\Microsoft.Extensions.Primitives.dll
----------------------------------------
Microsoft.Extensions.FileProviders.Composite
    程序集版本: 8.0.0.0
    位置: C:\Users\Administrator\Desktop\Boots\publish\Microsoft.Extensions.FileProviders.Composite.dll
----------------------------------------
System.Threading.ThreadPool
    程序集版本: 8.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.5\System.Threading.ThreadPool.dll
----------------------------------------
System
    程序集版本: 4.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.5\System.dll
----------------------------------------
System.Runtime.Loader
    程序集版本: 8.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.5\System.Runtime.Loader.dll
----------------------------------------
System.Collections.NonGeneric
    程序集版本: 8.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.5\System.Collections.NonGeneric.dll
----------------------------------------
System.Windows.Forms.resources
    程序集版本: 8.0.0.0
    位置: C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\8.0.5\zh-Hans\System.Windows.Forms.resources.dll
----------------------------------------

************** JIT 调试 **************

.NET Version

8.0.300

Anything else?

.NET SDK:
Version: 8.0.300
Commit: 326f6e68b2
Workload version: 8.0.300-manifests.c1c70047
MSBuild version: 17.10.4+10fbfbf2e

运行时环境:
OS Name: Windows
OS Version: 10.0.20348
OS Platform: Windows
RID: win-x64
Base Path: C:\Program Files\dotnet\sdk\8.0.300\

已安装 .NET 工作负载:
没有要显示的已安装工作负载。

Host:
Version: 8.0.5
Architecture: x64
Commit: 087e15321b

.NET SDKs installed:
8.0.300 [C:\Program Files\dotnet\sdk]

.NET runtimes installed:
Microsoft.AspNetCore.App 8.0.5 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.NETCore.App 8.0.5 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.WindowsDesktop.App 8.0.5 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]

Other architectures found:
None

Environment variables:
Not set

global.json file:
Not found

Learn more:
https://aka.ms/dotnet/info

Download .NET:
https://aka.ms/dotnet/download

Trace Logs

Category: Microsoft.AspNetCore.Components.WebView.WindowsForms.BlazorWebView
EventId: 10

Creating file provider at content root 'C:\Users\Administrator\Desktop\Boots\publish\wwwroot', using host page relative path 'index.html'.

Category: Microsoft.AspNetCore.Components.WebView.WindowsForms.BlazorWebView
EventId: 11

Adding root component 'SubscriptionMain.App' with selector '#app'. Number of parameters: 0

Category: Microsoft.AspNetCore.Components.WebView.WindowsForms.BlazorWebView
EventId: 12

Starting initial navigation to '/'.

@dotnet-issue-labeler dotnet-issue-labeler bot added the area-blazor Includes: Blazor, Razor Components label May 17, 2024
@wu-yafeng
Copy link
Contributor Author

Ok, I got it. The reason is WebView2 Runtime not installed on user machine. I guess blazor should check WebView2 Runtime before start?

@javiercn
Copy link
Member

javiercn commented May 20, 2024

@wu-yafeng thanks for contacting us.

The webview package should already take care of that and surface a meaningful error. I suggest filing a bug in the webview2 repo if that's not the case.

@javiercn javiercn added question ✔️ Resolution: Answered Resolved because the question asked by the original author has been answered. labels May 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-blazor Includes: Blazor, Razor Components ✔️ Resolution: Answered Resolved because the question asked by the original author has been answered. question Status: Resolved
Projects
None yet
Development

No branches or pull requests

3 participants
@javiercn @wu-yafeng and others