我正在使用CSource / CSourceStream作为基础编写DirectShow捕获过滤器,但是当我在Firefox + Flash中访问凸轮时,我在关闭Firefox时得到调试断言和以下调试错误。
Cam6.ax(tid 1c98) 133506 :
Cam6.ax(tid 1c98) 133506 : ID Object Description
Cam6.ax(tid 1c98) 133506 :
Cam6.ax(tid 1c98) 133506 : 19 (001AE940) Camera Stream
Cam6.ax(tid 1c98) 133507 : 18 (001AE940) Camera
Cam6.ax(tid 1c98) 133507 : 6 (001AE940) Camera Stream
Cam6.ax(tid 1c98) 133507 : 5 (001AE940) Camera
Cam6.ax(tid 1c98) 133507 :
Cam6.ax(tid 1c98) 133507 : Total object count 4
据我所知,这不是我的错。我怀疑Flash在关机时不正确地丢弃了DirectShow图。我已经阅读并重新阅读了MSDN文档,并在网上搜索了一些示例,但没有发现任何内容。
任何人都可以帮我澄清这一点或指出我正确的方向吗?
答案 0 :(得分:1)
对此感到有点傻。花了一天时间查看引用计数等等,结果证明这是一个noobie错误。我使用/ MDd标志编译strmbasd.lib,使用/ MD标志编译我的代码。前者是针对调试运行时库,后者是发布运行时库。
链接器发出警告,但没有注意到,代码一直运行到释放DLL的时间。去图..
我猜是那个愚蠢的人。 :)