[英]VC++ 2010 - Undeclared Identifier in attempt at DLL, small amount of code
这里的C ++新手。 我正在尝试将一些WIA函数放到DLL中。 我一直在IWiaDevMgr变量上获取未声明的标识符。 创建项目时,我选择了Win32控制台应用程序和DLL应用程序类型。 不知道是否重要,但是我将wiaguid.lib放在项目properties -> Linker -> input -> additional dependencies
。
此代码有什么问题?
我的DLL
#include <wia.h>
namespace MyDLL
{
class MyFirstFuncs
{
public:
static __declspec(dllexport) int doWork();
};
}
MyDLL.cpp
#include "MyDLL.h"
namespace MyDLL
{
int MyFirstFuncs::doWork()
{
IWiaDevMgr *pIWiaDevMgr;
}
}
我有同样的问题。 通过反复试验,我发现
#include <windows.h>
#include <wia.h>
解决了问题。
我也是C ++新手,所以无法告诉您这样做的确切原因。 WIA可能取决于WINDOWS.H中的某些定义/宏/任何内容
检查包含头文件的顺序。 可能和我在Directshow应用程序中遇到的问题一样。 我在d3d9.h之前包含了vmr9.h。 在构建过程中,编译器会引发与vmr9.h中包含的d3d9对象有关的错误。 我不得不重新排序内含物以解决问题
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.