为什么我用VS2005写不了Directshow的DLL?

yinfuyong 2009-11-20 11:10:06
我刚开始学着写Directshow的DLL
我在vs2005新建(比如说MyFilter.DLL):

一个Win32控制台应用程序---->DLL(空项目)


然后我新建MyFilter.cpp

其中写了这么一段:
class CMyFilter : public CTransformFilter
{
public:
CMyFilter(LPUNKNOWN pUnk, HRESULT *phr) :
CTransformFilter(NAME("YUV Transform Filter"), pUnk, CLSID_MyFilter)
{}
HRESULT Transform(IMediaSample *pIn, IMediaSample *pOut);
..........
HRESULT SetMediaType(PIN_DIRECTION direction, const CMediaType *pmt);

// Static object-creation method (for the class factory)
static CUnknown * WINAPI CreateInstance(LPUNKNOWN pUnk, HRESULT *pHr);
};
出现了错误:
1>MyFilter.obj : error LNK2019: 无法解析的外部符号 "void __stdcall DbgAssert(wchar_t const *,wchar_t const *,int)"
1>MyFilter.obj : error LNK2019: 无法解析的外部符号 "public: __thiscall CTransformFilter::CTransformFilter(wchar_t *,struct IUnknown *,struct _GUID const &)"

请帮我看看

我也把需要加的库文件加了 strmbasd.lib winmm.lib msvcrtd.lib
...全文
163 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zoulie 2009-11-21
  • 打赏
  • 举报
回复
应该是配置不对,参看楼上的
blackboycpp 2009-11-21
  • 打赏
  • 举报
回复
lz可以参考以下文章:
《在vs2005中配置directshow开发环境》
http://blog.csdn.net/blackboyofsnp/archive/2009/11/04/4769540.aspx
程序员小哈 2009-11-20
  • 打赏
  • 举报
回复
帮你顶一下吧
koople 2009-11-20
  • 打赏
  • 举报
回复
你baseclass 是什么版本的?
yinfuyong 2009-11-20
  • 打赏
  • 举报
回复
郁闷死了!
瓶盒 2009-11-20
  • 打赏
  • 举报
回复
试下把项目类型由Unicode 改成多字节字符集。
或者加入Unicode 版本的strmbasd.lib

2,541

社区成员

发帖
与我相关
我的任务
社区描述
专题开发/技术/项目 多媒体/流媒体开发
社区管理员
  • 多媒体/流媒体开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧