1

我想使用 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?

问候,

朱利安

4

0 回答 0