我们有一个使用VB.NET VS2012构建的大型应用程序。关闭应用时,偶尔会出现unhandled exception
。非常随机,有时它确实有时它没有。
错误如下。
System.InvalidOperationException was unhandled
HResult=-2146233079
Message=Invoke or BeginInvoke cannot be called on a control until the window handle has been created.
Source=System.Windows.Forms
StackTrace:
at System.Windows.Forms.Control.MarshaledInvoke(Control caller, Delegate method, Object[] args, Boolean synchronous)
at System.Windows.Forms.Control.BeginInvoke(Delegate method, Object[] args)
at System.Windows.Forms.WindowsFormsSynchronizationContext.Post(SendOrPostCallback d, Object state)
at System.Windows.Forms.AxHost.ConnectionPointCookie.Finalize()
InnerException:
我们生成一个转储文件,试图找到它的起源但没有运气。调试器只显示No source code available
。我们使用某些第三方控件。在这一点上,我们只想找到试图创建控件的内容。如果它与第三方控件有问题,如果我们没有该代码,我们无法修复它,但也许我们可以解决它。但我们无法找到试图创建控制的东西(关闭时)。
我们已经审阅了许多描述如何利用故障转储文件的网络帖子,但没有运气识别生成此控件的控件(甚至是控件类型)。只知道类型将有助于缩小它。
我们至少可以获得控制类型或原始调用者的任何想法或者?
如果没有提供足够的信息,请告诉我,我会发布我能做的事情。
发布代码不是一种选择,因为我们不知道消息的来源。
提前致谢!
我应该补充一点,我们确实使用try catch块来处理所有事情。我们也有一个日志记录程序,但我们没有在日志文件中看到任何这些异常。