我创建了一个示例应用程序,在firebreath插件窗口中使用DirectShow显示网络摄像头预览。当我第一次加载网页时,它工作得很好,但在我导航到另一个页面并返回插件页面后,它不工作吗。在我刷新网页后,它也不起作用。知道吗?
听起来有些东西没有得到正确清理,或者你可能正在使用一些全局资源,这些资源在插件实例之间共享,但没有完全重置。
请记住,插件不会在实例之间卸载,因此如果您使用任何全局/静态变量,则插件实例之间的进程不会关闭;这给为应用程序编写的插件中使用的许多库带来了麻烦,因为大多数使用directshow的应用程序都会在再次使用任何东西之前关闭进程,因此不会完全清理。
不管怎样,根据你给我们的信息,这是我最好的猜测。它可能不是什么显而易见的东西——它可能是directshow内部的东西。