C++ 如何编译修改后的videoInput.h

C++ 如何编译修改后的videoInput.h,c++,opencv,C++,Opencv,我需要使用修改过的videoInput库,它具有 deviceSetupWithSubtype() (它不是原始的videoInput库) 我在本页末尾的rar中获得了.h和.cpp: 我尝试用VC2010 Express C++编译它,我得到了我的.LIB,但是当我把它放在我想使用修改的VIDEORION.H的程序中时,我得到了很多LNK错误,例如: videoInput.lib(videoInput.obj) :error LNK2001: unresolved external sym

我需要使用修改过的videoInput库,它具有
deviceSetupWithSubtype()
(它不是原始的videoInput库)

我在本页末尾的
rar
中获得了
.h
.cpp

<>我尝试用VC2010 Express C++编译它,我得到了我的.LIB,但是当我把它放在我想使用修改的VIDEORION.H的程序中时,我得到了很多LNK错误,例如:

videoInput.lib(videoInput.obj) :error LNK2001:  unresolved external symbol __imp__CoTaskMemFree@4 

videoInput.lib(videoInput.obj) :error LNK2001:  unresolved external symbol _MEDIASUBTYPE_RGB24 

videoInput.lib(videoInput.obj) :error LNK2001:  unresolved external symbol _MEDIASUBTYPE_AYUV 

videoInput.lib(videoInput.obj) :error LNK2001:  unresolved external symbol _MEDIASUBTYPE_Y211 
(我也尝试了普通的videoInput.lib,效果很好,但它不是我需要的版本)

我怎样才能解决这个问题? 或者,如果你刚刚修改了videoInput.lib,你能上传它吗? 多谢各位

编辑:

在释放模式下,我还收到以下错误:

videoInput.lib(videoInput.obj) : error LNK2038: mismatch detected for  '_ITERATOR_DEBUG_LEVEL': value '0' doesn't match value '2' 

在对链接错误进行了大量搜索后,我尝试了许多LIB,最后我找到了解决方案: 您必须在videoInput.h中添加这些行(最终调整链接器中的路径,我不需要它):


现在生成的videoInput.lib可以正确编译。

您有一个未解析的外部符号,这意味着您没有链接到您应该链接的东西。尝试使用源代码附带的makefile构建它。我没有使用makefile的经验,总之我搜索了一些东西,所以我在控制台中搜索了:nmake-f makefile.win,但我得到了以下错误:makefile.win(24):致命错误U1001:语法错误:非法字符'{'在macroStop中。在一个文件夹中有以下文件:makefile.win videoInputLib.a videoInputLib.dev和videoInputLib.layout在另一个文件夹中有videoInput.cpp videoInput.h和videoInput.oI。我看到makefile是在dev-c++中使用mingw创建的。因此它无论如何都不会调用cl.exe。无论如何,这不是教授关于makefiles,也与您无关。请查看归档文件中的文件夹“Modified videoinputlib\DevCpp CompilesLib”。这里有在
dev-c++
中构建的说明,我很抱歉,我无法提供任何其他内容。
// if gives error LNK2038: mismatch detected for   '_ITERATOR_DEBUG_LEVEL': value '0' doesn't match value '2'
// insert _ALLOW_ITERATOR_DEBUG_LEVEL_MISMATCH in the C++ preprocessor option in the project properties
// these are the library needed:
#pragma comment (lib, "oleaut32")
#pragma comment (lib, "ole32")
#pragma comment (lib, "user32")
#pragma comment (lib, "strmbase")