directshow 不注册使用filter

最近花了点时间看了看播放器的代码,发现很多的编解码filter跟采集程序中也用到的filter冲突

主要是两个使用的版本不一样。。。。。

于是到网上搜了下,发现可以不必使用regsvr32 注册filter直接在程序中调用,现在很多流行的播放器都是用这种,比如暴风影音,QQ影音。。

这样自己的filter就可以不被别人使用了

 

首先com组件也是基于DLL的,可以用LoadLibary加载之,使用GetProcAddress获取到DllGetClassObject地址,之后得到IClassFactory然后调用CoCreateInstance创建对象,获取对应的接口指针,而绕过了从注册表寻找路径加载filter

你可能感兴趣的:(directshow 不注册使用filter)