gpt4 book ai didi

.net - 是什么导致 WPF 应用程序中出现 InvalidDeploymentException?

转载 作者:行者123 更新时间:2023-12-03 11:48:42 26 4
gpt4 key购买 nike

我开发了一个 WPF 应用程序,当我在 Debug模式下启动它时,我在输出中看到以下内容:

'WpfApplication1.vshost.exe' (Managed (v2.0.50727)): Loaded 'C:\WINDOWS\assembly\GAC_MSIL\System.Deployment\2.0.0.0__b03f5f7f11d50a3a\System.Deployment.dll', Symbols loaded. A first chance exception of type 'System.Deployment.Application.InvalidDeploymentException' occurred in System.Deployment.dll Additional information: Application identity is not set.



如果我在另一个 WPF 应用程序中使用此应用程序中的控件,则输出中有 7 条此类消息。尽管如此,该应用程序工作正常。

你能解释一下抛出这些异常的原因吗?我发现方法 ApplicationDeployment.get_CurrentDeployment提高他们。在 MSDN 中写道,当“您试图从非 ClickOnce 应用程序调用此静态属性”时会出现此异常。我不明白这是什么意思。

我发现了类似的帖子 InvalidDeploymentException - Application identity is not set但这个问题没有答案。

最佳答案

这是“第一次机会异常”,这意味着调试器只是通知您抛出了异常,而不是未处理的异常。

.NET Framework 在内部抛出并捕获该异常——调试器告诉您它出现在 System.Deployment.dll 中的某些代码中。 .当尝试访问用户/网络信息时会引发异常,但底层代码会在异常发生时捕获异常并自动恢复执行。您对此无能为力,而且它相对无害。

您很可能尝试检索当前用户的 AppData 路径,在这种情况下,框架需要确定您的应用程序是普通应用程序还是 ClickOnce 应用程序,以便返回正确的路径。如果您是 ClickOnce 应用程序,则只会返回正确的数据。否则,将引发异常,该异常被框架捕获,并假设您的应用程序不是 ClickOnce 应用程序,从而导致返回标准用户路径。

应用程序运行时会引发和处理许多异常。除非它们未经处理,否则没有任何害处。如果这确实让您感到困扰,您可以自定义调试器通知您的异常。例如:

  • 从“调试”菜单打开“异常”窗口。
  • 展开“公共(public)语言运行时异常”->“System.Deployment.Application”。
  • 取消选中“System.Deployment.Application.InvalidDeploymentException”旁边的框。
  • 关于.net - 是什么导致 WPF 应用程序中出现 InvalidDeploymentException?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4677756/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com