【DirectShow】BaseClasses的VS2012工程
这个东西编译出来可以得到“strmbase.lib”,用于DirectShow。VS自带了这个lib,但是只带了Release版本,而且貌似有BUG。因此我将BaseClasses的源码重新编译了一遍,得到了没有BUG的、能编译出DEBUG版本的strmbasd.lib的VS2012的工程。
中间文件已删除。
解压后共22.4 MB
回复后可见哦。**** Hidden Message *****
如果不使用我重新编译的库,你可能会遇到如下的问题:1>XXXX.obj : error LNK2001: 无法解析的外部符号 "public: virtual long __stdcall CBaseRenderer::FindPin(wchar_t const *,struct IPin * *)" (?FindPin@CBaseRenderer@@UAGJPB_WPAPAUIPin@@@Z)
1>XXXX.obj : error LNK2001: 无法解析的外部符号 "public: virtual long __stdcall CBaseFilter::QueryVendorInfo(wchar_t * *)" (?QueryVendorInfo@CBaseFilter@@UAGJPAPA_W@Z)
1>XXXX.obj : error LNK2001: 无法解析的外部符号 "public: virtual long __stdcall CBaseVideoRenderer::JoinFilterGraph(struct IFilterGraph *,wchar_t const *)" (?JoinFilterGraph@CBaseVideoRenderer@@UAGJPAUIFilterGraph@@PB_W@Z)
1>XXXX.obj : error LNK2001: 无法解析的外部符号 "public: __thiscall CBaseVideoRenderer::CBaseVideoRenderer(struct _GUID const &,wchar_t *,struct IUnknown *,long *)" (??0CBaseVideoRenderer@@QAE@ABU_GUID@@PA_WPAUIUnknown@@PAJ@Z)strmbasd.lib(dllsetup.obj) : error LNK2001: unresolved external symbol "class CFactoryTemplate *g_Templates" (?g_Templates@@3PAVCFactoryTemplate@@A)
strmbasd.lib(dllentry.obj) : error LNK2001: unresolved external symbol "class CFactoryTemplate *g_Templates" (?g_Templates@@3PAVCFactoryTemplate@@A)所以只要使用了我的库,就能解决以上问题。
这个问题据说是因为C++的优化把它内联掉了,然后在lib就不导出了。。 :hug:需要,谢谢 哇塞 谢谢楼主哦 谢谢楼楼~~ 看看 能不能把项目文件传一下阿,最近在研究directshow 不锈钢老鼠 发表于 2015-8-26 09:09
能不能把项目文件传一下阿,最近在研究directshow
已经传了啊,回复了才能看到内容。 最近遇到这个问题,求解决 :D:D:D:D:D:D:D:D:D:D:D 收藏了,謝謝 1111111wwwww 不知道现在看还行不行
directshow 编译时报错 正好我碰到这样的问题,希望可以借鉴一下 谢谢啦~ 感谢,正好需要。。。。。 感谢,正好需要用~~~~~~ 范德萨范德萨范德萨范德萨范德萨范德萨范德萨范德萨范德萨范德萨范德萨范德萨范德萨范德萨发 急需,赞 急需,看看哪
页:
[1]
2