DIRECTSHOW编译问题
Linking...
1> Creating library Release/VideoCap.libandobject Release/VideoCap.exp
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _IID_ISampleGrabberCB
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _IID_IBaseFilter
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _CLSID_VideoInputDeviceCategory
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _CLSID_SystemDeviceenum
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _IID_ICreateDevenum
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _IID_IMediaEvent
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _IID_IMediaControl
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _CLSID_FilterGraph
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _IID_IGraphBuilder
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _CLSID_CaptureGraphBuilder2
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _IID_ICaptureGraphBuilder2
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _IID_ISampleGrabber
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _PIN_CATEGORY_CAPTURE
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _MEDIATYPE_Video
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _CLSID_NullRenderer
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _CLSID_SampleGrabber
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _CLSID_VideoRenderer
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _CLSID_SmartTee
1>Release/VideoCap.ocx : fatal error LNK1120: 18 unresolvedexternals
解决办法:工程-> 设置-> link (对象/模块库)中加入strmiids.lib 即可。
Linking...
1> Creating library Release/VideoCap.libandobject Release/VideoCap.exp
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _IID_ISampleGrabberCB
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _IID_IBaseFilter
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _CLSID_VideoInputDeviceCategory
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _CLSID_SystemDeviceenum
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _IID_ICreateDevenum
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _IID_IMediaEvent
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _IID_IMediaControl
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _CLSID_FilterGraph
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _IID_IGraphBuilder
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _CLSID_CaptureGraphBuilder2
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _IID_ICaptureGraphBuilder2
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _IID_ISampleGrabber
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _PIN_CATEGORY_CAPTURE
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _MEDIATYPE_Video
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _CLSID_NullRenderer
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _CLSID_SampleGrabber
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _CLSID_VideoRenderer
1>VideoCapCtrl.obj : error LNK2001: unresolvedexternal symbol _CLSID_SmartTee
1>Release/VideoCap.ocx : fatal error LNK1120: 18 unresolvedexternals
解决办法:工程-> 设置-> link (对象/模块库)中加入strmiids.lib 即可。
本文解决了DIRECTSHOW项目中出现的多个未解析外部符号错误,通过在链接器设置中引入strmiids.lib库成功解决了这些问题。

169

被折叠的 条评论
为什么被折叠?



