C# Maui 报错:程序“[15748] MauiApp1.exe”已退出,返回值为 2147942405 (0x80070005)

“MauiApp1.exe”(CoreCLR: DefaultDomain): 已加载“C:\Program Files\dotnet\shared\ Microsoft.NETCore.App\8.0.6\System.Private.CoreLib.dll”。
“MauiApp1.exe”(CoreCLR: clrhost): 已加载“E:\cDemo\MauiApp1\MauiApp1\bin\Debug\net8.0-windows10.0.19041.0\win10-x64\AppX\MauiApp1.dll”。已加载符号。
“MauiApp1.exe”(CoreCLR: clrhost): 已加载“C:\Program Files\dotnet\shared\ Microsoft.NETCore.App\8.0.6\System.Runtime.dll”。
“MauiApp1.exe”(CoreCLR: clrhost): 已加载“E:\cDemo\MauiApp1\MauiApp1\bin\Debug\net8.0-windows10.0.19041.0\win10-x64\AppX\Microsoft.Windows.ApplicationModel.WindowsAppRuntime.Projection.dll”。
“MauiApp1.exe”(CoreCLR: clrhost): 已加载“C:\Program Files\dotnet\shared\ Microsoft.NETCore.App\8.0.6\System.Runtime.InteropServices.dll”。
“MauiApp1.exe”(CoreCLR: clrhost): 已加载“E:\cDemo\MauiApp1\MauiApp1\bin\Debug\net8.0-windows10.0.19041.0\win10-x64\AppX\WinRT.Runtime.dll”。
“MauiApp1.exe”(CoreCLR: clrhost): 已加载“C:\Program Files\dotnet\shared\ Microsoft.NETCore.App\8.0.6\System.Collections.Concurrent.dll”。
“MauiApp1.exe”(CoreCLR: clrhost): 已加载“C:\Program Files\dotnet\shared\ Microsoft.NETCore.App\8.0.6\System.Collections.dll”。
“MauiApp1.exe”(CoreCLR: clrhost): 已加载“C:\Program Files\dotnet\shared\ Microsoft.NETCore.App\8.0.6\System.Threading.dll”。
“MauiApp1.exe”(CoreCLR: clrhost): 已加载“C:\Program Files\dotnet\shared\ Microsoft.NETCore.App\8.0.6\ System.Runtime.CompilerServices.Unsafe.dll”。
“MauiApp1.exe”(CoreCLR: clrhost): 已加载“C:\Program Files\dotnet\shared\ Microsoft.NETCore.App\8.0.6\System.Private.Uri.dll”。
“MauiApp1.exe”(CoreCLR: clrhost): 已加载“C:\Program Files\dotnet\shared\ Microsoft.NETCore.App\8.0.6\System.ObjectModel.dll”。
“MauiApp1.exe”(CoreCLR: clrhost): 已加载“C:\Program Files\dotnet\shared\ Microsoft.NETCore.App\8.0.6\ System.ComponentModel.dll”。
“MauiApp1.exe”(CoreCLR: clrhost): 已加载“C:\Program Files\dotnet\shared\ Microsoft.NETCore.App\8.0.6\System.Numerics.Vectors.dll”。
程序“[15748] MauiApp1.exe”已退出,返回值为 2147942405 (0x80070005)。
最后的解决方法是:
在 .csproj 文件的尾部加上
       < PropertyGroup >
              < WindowsAppSdkDeploymentManagerInitialize >false </ WindowsAppSdkDeploymentManagerInitialize >
       </ PropertyGroup >

什么意思呢?

WindowsAppSdkDeploymentManagerInitialize> 标签设置为 false 指示该项目在部署时不使用 Windows 应用 SDK 部署管理器进行初始化。Windows 应用 SDK(先前称为 Project Reunion)是一套工具和库,旨在帮助开发者在 Windows 上构建统一和现代的应用。
具体来说,WindowsAppSdkDeploymentManagerInitialize 属性控制着一个名为 DeploymentManager 的组件,它通常负责在运行 MAUI 应用时确保所有需要的 Windows 应用 SDK 组件都已安装在系统上。当设置为 false 时,系统预计不会尝试启动这个自动检查和安装过程
这可能是为了解决特定的部署问题,或者在开发者已经知道所有必需的组件已经在目标系统上可用的情况下使用。取消启动初始化可以减少应用启动时间和潜在的部署问题,但是它要求开发者确保所有必要的依赖项已经正确安装。如果这个设置不正确,它可能导致应用启动失败或运行时错误,因为应用所需的 SDK 组件可能不会被自动部署。
(0x80070005)   估计是这个 自动检测的程序 没有权限启动起来。  
  • 25
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 在 C# 中,如果你尝试声明一个静态变量的类型为 Microsoft.Maui.Storage.FilePicker,但是在编译时报错 "无法声明静态类型 Microsoft.Maui.Storage.FilePicker 的变量",这可能是因为 Microsoft.Maui.Storage.FilePicker 类型定义中没有加上 "static" 关键字。 为了解决这个问题,你可以尝试把变量的类型改为非静态类型,或者把 Microsoft.Maui.Storage.FilePicker 类型定义中的 "static" 关键字加上。 例如: ``` // 使用非静态类型 Microsoft.Maui.Storage.FilePicker filePicker; // 加上 "static" 关键字 static class FilePicker { // 类型定义 } ``` ### 回答2: 在C-Sharp中,报错提示"无法声明静态类型Microsoft.Maui.Storage.FilePicker的变量"的意思是无法声明一个静态变量来存储Microsoft.Maui.Storage.FilePicker类型的对象。 出现这个问题有可能是因为Microsoft.Maui.Storage.FilePicker是一个抽象类或接口,不能直接实例化,只能通过它的子类或具体实现来创建对象。静态变量必须在编译时进行初始化,而无法在运行时创建对象。 要解决这个问题,可以将静态变量的类型改为Microsoft.Maui.Storage.FilePicker的子类或具体实现,或者使用其他适合的方式来存储Microsoft.Maui.Storage.FilePicker对象,例如使用实例变量或将对象存储在集合中。 以下是一个示例代码片段,演示了如何解决这个问题: ```csharp // 假设Microsoft.Maui.Storage.FilePicker有一个具体的实现类叫做具体FilePicker private static FilePicker filePicker = new 具体FilePicker(); public static void Main(string[] args) { // 使用filePicker对象做一些操作 filePicker.Open(); // 或者可以将对象存储在集合中 List<Microsoft.Maui.Storage.FilePicker> filePickers = new List<Microsoft.Maui.Storage.FilePicker>(); filePickers.Add(new 具体FilePicker()); } ``` 通过上述示例,可以看到我们将具体FilePicker对象赋值给静态变量filePicker,并且可以正常使用它进行操作。如果还是无法解决这个问题,可能需要检查是否正确引用了Microsoft.Maui.Storage.FilePicker类所在的程序集。 ### 回答3: C-Sharp中报错:无法声明静态类型Microsoft.Maui.Storage.FilePicker的变量。 这个错误通常出现在尝试在C#中声明静态类型的变量时。在这种情况下,我猜测你可能在使用Microsoft.Maui.Storage.FilePicker库时遇到了这个问题。 解决这个问题的方法是检查你是否正确引入了Microsoft.Maui.Storage.FilePicker库,并且已经在项目中添加了对应的引用。如果没有添加引用或者引用不正确,就会导致C#无法识别Microsoft.Maui.Storage.FilePicker类型,进而无法声明相应的变量。 为了解决这个问题,你可以按照以下步骤进行操作: 1. 确保你已经正确安装了Microsoft.Maui.Storage.FilePicker库,并在项目中引入了正确的命名空间。 2. 打开Visual Studio或其他开发工具,检查项目引用文件夹,确保你已经添加了对应的库引用。 3. 如果发现你没有正确引入库,或者引入的版本不正确,你可以通过右键点击项目文件,选择“引用”或“添加引用”,然后在弹出的对话框中搜索并引入正确的Microsoft.Maui.Storage.FilePicker库。 4. 确保在代码中的声明变量部分的语法没有错误。代码中应该像这样声明变量:Microsoft.Maui.Storage.FilePicker myFilePicker = new Microsoft.Maui.Storage.FilePicker(); 通过以上步骤,你应该能够解决C#中无法声明静态类型Microsoft.Maui.Storage.FilePicker的变量的问题。如果问题仍然存在,请提供更详细的错误描述或代码示例,以便我们能够给出更准确的解答。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值