[英]Error 'specified method is not supported'. Get call stack
我的应用程序在客户端 PC 上出现错误“不支持指定的方法”。 我不知道问题出在哪里。 他没有安装 Visual Studio,因此无法调试。
如果我在应用程序中编写一些调试代码并给他新的 exe,有没有办法在 WPF 中获取调用堆栈?
您可以订阅DispatcherUnhandledException
以在应用程序级别捕获未处理的异常并记录异常的堆栈跟踪。
App.xaml.cs 中的DispatcherUnhandledException
示例
public App() {
this.DispatcherUnhandledException += OnDispatcherUnhandledException;
}
void OnDispatcherUnhandledException(object sender, DispatcherUnhandledExceptionEventArgs e) {
string errorMessage = string.Format("An unhandled exception occurred: {0}", e.Exception.Message);
MessageBox.Show(errorMessage, "Error", MessageBoxButton.OK, MessageBoxImage.Error);
e.Handled = true;
}
在大局中,您可以在以下位置捕获异常:您可以在不同级别捕获未处理的异常:
AppDomain.UnhandledException
来自AppDomain.UnhandledException
所有线程。Dispatcher.UnhandledException
来自单个特定 UI 调度程序线程。Application.DispatcherUnhandledException
来自 WPF 应用程序中的主 UI 调度程序线程。TaskScheduler.UnobservedTaskException
来自每个使用任务调度程序进行异步操作的 AppDomain。 您应该考虑在什么级别捕获未处理的异常。在#2 和#3 之间做出决定取决于您是否使用了多个 WPF 线程。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.