与WPF一起使用DirectShow时的偶发错误窗口

时间:2022-07-01 15:59:10

I have build an app which shows two direct show graphs in parallel. This application uses WPF, therefore I evaluated different solutions, like WPFMediaKit (http://wpfmediakit.codeplex.com/) and AVCapWPF(https://wpfcap.codeplex.com/).

我已经构建了一个应用程序,它可以并行显示两个直接显示图形此应用程序使用WPF,因此我评估了不同的解决方案,如WPFMediaKit(http://wpfmediakit.codeplex.com/)和AVCapWPF(https://wpfcap.codeplex.com/)。

Both solutions normally works fine. But sometimes i get a grey error window (which looks a lot like Windows 2000) with some information about CPU (but old CPU information, seems like the actual CPU was not known, when this error message was designed) and loaded Dlls, but no error message at all. The title of the window is simply "Error".

两种解决方案通常都能很好但有时我会得到一个灰色的错误窗口(看起来很像Windows 2000),其中包含一些有关CPU的信息(但是旧的CPU信息,似乎实际的CPU未知,当设计此错误消息时)并加载了Dll,但没有完全错误信息。窗口的标题只是“错误”。

The problem is the error occurs sporadically, so I am not sure, whether I know all occurrences, but the following error cases are known:

问题是偶尔发生错误,所以我不确定,我是否知道所有事件,但以下错误情况是已知的:

  1. Error occurs somewhere when building the direct show graph which results in only one graph loaded and displays
  2. 在构建直接显示图形时某处出现错误,导致只加载一个图形并显示

  3. Error occurs before both graphs were built, which results in both graphs loaded and displayed
  4. 在构建两个图之前发生错误,这导致加载和显示两个图

  5. Error does not depend of the used filter in the graph. For rendering the frameworks uses different renderer and the source filter where switched as well, mostly using Montivision DemoSource.
  6. 错误不依赖于图中使用的过滤器。对于渲染,框架使用不同的渲染器和切换的源过滤器,主要使用Montivision DemoSource。

I could only produce the error when both graphs were rendered but could also not find a possibility to produce it regularly.

我只能在渲染两个图形时产生错误,但也无法定期生成它。

When the error window is closed, the whole application is finished (crashed). It is impossible to catch the error in .Net. It seems like it comes from a system library.

关闭错误窗口后,整个应用程序完成(崩溃)。在.Net中捕获错误是不可能的。它似乎来自系统库。

Error Window Text:

错误窗口文本:

OS:  Workstation, SP1
CPU: GenuineIntel, Intel Pentium III Xeon, MMX @ 2490 MHz

Module name: D:\[...]\bin\Debug\TestApp.exe

Application data:
VmVyc2lvbjogV2t4dGJIZHFVbTEyYkdsb0oxRmhiR3htS2xwaWUya3N
TMlJpZW1wOVRUd3hTaU0rTXlJNE5DTTVOaVpLT3pnVkUwSXJOQzRxUE
... (a base64 encoded list of loaded dlls)

I hope someone knows that error and a good solution for avoiding it.

我希望有人知道错误和避免它的好方法。

1 个解决方案

#1


0  

Did you tried to run app on clean Windows installation and without Montivision etc. usage?

您是否尝试在干净的Windows安装上运行应用程序而没有使用Montivision等?

Also, please show list of used DLL's and graph screenshot.

另外,请显示使用过的DLL列表和图表截图。

#1


0  

Did you tried to run app on clean Windows installation and without Montivision etc. usage?

您是否尝试在干净的Windows安装上运行应用程序而没有使用Montivision等?

Also, please show list of used DLL's and graph screenshot.

另外,请显示使用过的DLL列表和图表截图。