我正在通过CLSID从一个DLL手动加载一些未注册的DirectShow过滤器,我想找出过滤器的名称(如GraphEdit中所示)。
我尝试过使用IBaseFilter:QueryFilterInfo方法,但这只在筛选器是图的一部分时才起作用,即使这样,它也会返回当过滤器被添加到图中时给过滤器的名称。
我正在寻找过滤器在将其实例添加到GraphEdit中的图形时所具有的默认名称。有可能得到吗?怎么做到的?
发布于 2014-11-21 06:53:55
过滤器图在过滤器加入图时为过滤器指定唯一的名称。该名称可以由过滤器加法器推荐,然后在发生冲突的情况下,过滤器图可能会附加一个数字作为后缀。当加法器没有指定名称时,过滤器图从QueryFilterInfo或过滤器注册信息中获取“默认”名称,其中友好名称也是注册的一部分。
注册名由过滤器映射器管理,并以编程方式访问。然后,它又将信息保存在注册表中的类别项下,尤指。HKEY_CLASSES_ROOT\CLSID\{083863F1-70DE-11D0-BD40-00A0C911CE86}\Instance密钥
https://stackoverflow.com/questions/27054015
复制相似问题