0
我在微软的“WIA教程”页面看到了这种编码方式,但是vC++不让我编译它!一直出现一些错误!在vC++中通过WIA扫描页面出错
#include "stdafx.h"
#include <Strsafe.h>
#include <Wia.h>
#include <WinError.h>
bool CreateWiaDeviceManager(IWiaDevMgr2 **ppWiaDevMgr){
//
// Validate arguments
//
if (NULL == ppWiaDevMgr)
{
return E_INVALIDARG;
}
//
// Initialize out variables
//
*ppWiaDevMgr = NULL;
//
// Create an instance of the device manager
//
//Vista or later:
HRESULT hr = CoCreateInstance(CLSID_WiaDevMgr2, NULL, CLSCTX_LOCAL_SERVER, IID_IWiaDevMgr2, (void**)ppWiaDevMgr);
//
// Return the result of creating the device manager
//
return SUCCEEDED(hr);
}
有错误:
1> WIAScanner.cpp(11):错误C2065:IWiaDevMgr2':未声明的标识符 1> WIAScanner.cpp(11):错误C2065:ppWiaDevMgr':未声明的标识符 1> WIAScanner.cpp(11):错误C2448:'CreateWiaDeviceManager':函数式初始化器似乎是函数定义
感谢您的关注。
不幸的是,它没有奏效。 –
你需要做的正确,它会工作。您必须通过项目设置或通过“stdafx.h”尽早定义'_WIN32_WINNT',具体取决于您的项目布局。 –
通过项目设置将'_WIN32_WINNT_'设置为0x0600之后,我得到了太多的错误:'__out_z LPSTR lpString1,//弃用:注释与其得到的一样好'或'1> C:\ Program Files(x86) Microsoft SDK \ Windows \ v7.0A \ include \ winbase.h(6141):错误C2226:语法错误:意外类型'LPWSTR'' –