我有一个WPF应用程序,其中正在使用Cefsharp.WPF-73.1.130程序包。在我的应用程序中,我右侧有一个导航面板,该面板使用Chromium控制器启动了ng-app。在WPF端发生一个事件后,我正在扩展面板,扩展后启动ng-app,然后再次折叠右侧面板。面板中正在加载应用程序,但此刻其可见性已设置为崩溃。 在WPF端发生几次此类事件后,我的应用程序崩溃了。
下面是事件查看器日志:
Faulting application name: Some.exe, version: 192, time stamp: 0x5f08152d Faulting module name: libcef.dll, version: 73.1.13.0, time stamp: 0x5c8499d0 Exception code: 0x4000001f Fault offset: 0x01a29f95 Faulting process id: 0x2868 Faulting application start time: 0x01d656a37c65a770 Faulting application path: C:\Program Files (x86)\some folder\some.exe Faulting module path: C:\Program Files (x86)\some folder\libcef.dll Report Id: 87b3b5b5-2630-45c7-a5f9-92a4b797d4d4 Faulting package full name: Faulting package-relative application ID:
我尝试在如下所述的app.xaml.cs中处理应用程序域级别的异常,但未在其中捕获异常。
AppDomain currentDomain = AppDomain.CurrentDomain;
currentDomain.UnhandledException += MyHandler;
static void MyHandler(object sender, UnhandledExceptionEventArgs args)
{
Exception e = (Exception)args.ExceptionObject;
Console.WriteLine("MyHandler caught : " + e.Message);
Console.WriteLine("Runtime terminating: {0}", args.IsTerminating);
MessageBox.Show("MyHandler caught : " + e.Message + " ");
}
我还尝试在cefsharp端处理异常,如下所示
settings.UncaughtExceptionStackSize = 100;
_webBrowser.Value.RenderProcessMessageHandler = new RenderProcessMessageHandler();
class RenderProcessMessageHandler : IRenderProcessMessageHandler
{
public void OnUncaughtException(IWebBrowser browserControl, IBrowser browser, IFrame frame, JavascriptException exception)
{
Console.WriteLine("OnUncaughtException() - " + exception.Message);
MessageBox.Show("Crashed - " + exception.Message);
}
........
有人可以帮忙,如何处理此渲染问题?