如何找到用于创建源过滤器的IMoniker?

时间:2012-11-06 15:41:23

标签: .net directshow reverse-engineering directshow.net graphedit

目前我正在编写一个基于DirectShow的应用程序,可以帮助用户配置他们的电视采集卡,因为GraphEdit似乎太难以让大多数人理解。我们的想法是,该应用程序将生成的Graph导出到.GRF file,将在另一个应用程序中使用。

用户可以选择使用哪个设备(IMoniker)来创建源过滤器,并可以更改有关视频/音频的一些设置。

在导出.GRF文件旁边,我的应用程序还应具有导入此类文件的功能。我的问题是:如何在导入的图形中找到用于创建源过滤器的名字/设备?

我尝试为所有连接的设备创建源过滤器列表,并将其与导入图中的源过滤器进行比较,但这似乎不起作用。

1 个答案:

答案 0 :(得分:2)

你不能告诉moniker来自创建的实例。要区分标记并能够找到所需的标记,请使用其IMoniker::GetDisplayName字符串作为唯一的持久标识符。