我想使用 C++ 类 CBaseVideoRenderer。我需要包含哪个文件来获取它的构造函数?
我已经包含了 renbase.h,但只有声明。我已经包含了 strmbase.h 和有关此类的任何其他错误都消失了,但缺少构造函数的错误。renbase.cpp 似乎有一个构造函数,但我不能只包含它而没有错误。
那么,你知道我需要哪些文件吗?我使用来自 XE2 16 的 embarcadero 的 C++-Builder。
编辑:我想使用这个类:
CBitmapRenderer::CBitmapRenderer(
TCHAR *pName,
LPUNKNOWN pUnk,
HRESULT *phr
)
: CBaseVideoRenderer(CLSID_BitmapRenderer,pName,pUnk,phr)
, m_InputPin(NAME("Video Pin"),this,&m_InterfaceLock,phr,L"Input")
{...
使用此代码:
CBitmapRenderer *m_pSnapshotter = new CBitmapRenderer( _T("Bitmap renderer"), NULL, &hr );
这会导致链接错误:
[ILINK32 Fehler] Error: Nicht auflösbares externes 'CBaseVideoRenderer::CBaseVideoRenderer(_GUID&, wchar_t *, IUnknown *, long *)' referenziert von C:\USERS\JULIAN\DESKTOP\PROGRAMM\WIN32\DEBUG\TESTRAUSCHEN.OBJ
我知道来自构造函数的缺失定义。
编辑2:
我现在已将所有文件包含在 baseClasses-directory 中,并且编译成功(没有错误)。但是,当我尝试运行应用程序时,我收到消息“strmbase.dll”丢失。再次安装此程序”但我从来没有 strmbasd.dll。我有一个 strmbasd.lib。这是在调试模式下尝试使用 Visual Studio 编译基类项目时的结果。
有谁知道在哪里可以得到这个 dll 或者如何使用 lib?
问候,
朱利安