要 运行 此程序,您必须安装 .net(对于 net5.0 windows 表单应用程序 windows 11)

to run this program you must install .net (for a net5.0 windows forms app windows 11)

我在 Windows 11 上使用 net5 构建了一个小型 C# windows 表单项目。它 运行 在 Vstudio 2019 最新版 (v16.11.8) 下的调试模式下正常。如果有帮助,“dotnet --list-sdks”命令报告已安装 .NET v5.0.404 和 v6.0.101。“dotnet --list-运行times”报告 运行 NETCore.App 次安装了 3.1.22、5.0.13 和 6.0.1,以及 WindowsDesktop.App 版本 3.1.22、5.0.13 和 6.0.1。

当我构建应用程序时,我使用 post-build 事件将文件复制到另一个文件夹,在该文件夹中我双击 .exe 文件以 运行 表单应用程序。但是双击总是告诉我 运行 我需要安装“.NET”的应用程序(确切地说,没有其他信息)。您现在要下载吗?我点击是,弹出对话框消失,没有任何反应。

我先将 .exe 复制到目标文件夹,当失败时,我也复制了 json 配置文件、DLL 和 .pdb 文件。但是,还是没有幸福。

我一定是遗漏了一些简单的东西,因为该应用 运行 在 vstudio 下运行良好。

我将 Debug/net5.0-windows 文件夹的内容与我的目标文件夹进行了比较。 Debug 文件夹有 44 个其他 DLL 和十几个语言包。我怀疑我的 .exe 应用程序出于某种原因无法找到所有这些 DLL。由于安装了所有 SDK 和 运行 次,它应该能找到它们。但是我不太了解如何告诉 .exe 文件查找和使用所有已安装的 SDK 和 运行 次。

有人可以告诉我我做错了什么以及如何使用安装的 运行 次将导出的文件导出到 运行 吗?谢谢。

您可以使用单个可执行选项发布它 - https://docs.microsoft.com/en-us/dotnet/core/deploying/single-file#publish-a-single-file-app---visual-studio

您可以通过 VS gui 或使用 .net cli 执行此操作,例如: dotnet publish -r win-x64 -p:PublishSingleFile=true --self-contained false