我有一个Mpeg2,TS应该被分析。我正在使用Windows 8(或8.1)中引入的一个名为Dvbsiparser.h.的头文件
我知道(但不确定)我应该构建一个过滤器图,然后添加两个重要的过滤器:
CoCreateInstance(__uuidof(IDvbSiParser)、.、.、IID_IDvbSiParser .)
我得到链接错误:未解决的外部IID_IDvbSiParser。
我使用Visual 2013、.Net 4.5和msvc++。我还包括了stream.h和link winmm.lib、strmbased.lib、msvcrtd.lib和strmiids.lib,并为windows设置了真正的lib路径。除了IDvbSiParser之外,所有其他对象都是创建的。
我应该使用另一个库还是包含另一个头文件?如何为IID_IDvbSiParser找到合适的库?谢谢。
发布于 2016-01-12 15:51:47
毕竟,我又读了一遍关于DvbSiParser2的MSDN,并面对了这个重要的注释:
IDvbSiParser2接口继承自IDvbSiParser。IDvbSiParser2还有以下几种类型的成员:
因此,我们可以使用IDvbSiParser2而不是IDvbSiParser,因为我们已经知道对于IDvbSiParser在IDvbSiParser2 MSDN Doc中提到过的有正确和真实的CLSID。下一步包括定义新的GUID变量,如下所示:
GUID CLSID_IDvbSiParser2 = {0xF6B96EDA, 0x1A94, 0x4476, 0xA8, 0x5F, 0X4D, 0x3D, 0xC7, 0xB3, 0x9C, 0x3F};
IDvbSiParser2 *ppdvbsp;
HRESULT hr = CoCreateInstance(CLSID_IDvbSiParser2, NULL, CLSCTX_INPROC_SERVER, __uuidof(IDvbSiParser2), void **( pDvbsiparser ));
if (SUCCEEDED(hr)) { lab lab lab};我想你会像我一样得到S_OK。
https://stackoverflow.com/questions/34721793
复制相似问题