Qt - C++ - 致命错误 C1083:无法打开包含文件:"afx.h"
Qt - C++ - fatal error C1083: Cannot open include file: 'afx.h'
这里我描述了我尝试构建以下C++项目所遵循的步骤:
http://sourceforge.net/projects/twain-samples/files/TWAIN%202%20Sample%20Application/
在Microsoft Windows 7-64位上。我的最终目标是保留功能并添加命令行参数,这样我就可以在批处理文件中运行它,因为现在它是一个基于菜单的软件。
-
安装Qt Creator社区
- 3.5.0版(基于Qt 5.5.0(MSVC 2013,32位(
- 可用套件:
- 桌面Qt 5.4.2 MSVC2013 64位2
- 台式机Qt 5.5.0 MSVC2010 32位
- 桌面Qt 5.5.0 MSVC2012 32位
- 台式机Qt 5.5.0 MSVC2013 32位
- 台式机Qt 5.5.0 MSVC2013 64位
-
下载免费图像库(二进制(
- http://downloads.sourceforge.net/freeimage/FreeImage3170Win32Win64.zip
-
安装Freeimage库
- 解压缩FreeImage3170Win32Win64.zip
- 打开文件夹FreeImage\Dist\x64
- 复制C:\Windows\System32文件夹中的freeimage.dll
-
下载并解压缩Twain项目
- 在中下载Twain_App_sample.source.ziphttp://sourceforge.net/projects/twain-samples/files/TWAIN%202%20Sample%20Application/
- 解压缩存档文件Twain_App_sample.source.zip,该文件将提供以下两个文件夹:
- Twain_App_sample01
- 常见
-
将Freeimage头文件和lib放入项目
- 将Freeimage.h复制到common文件夹中
- 在Twain_App_sample01\src文件夹中创建lib
- 复制Twain_App_sample01\src\lib文件夹中的freeimage.lib
-
在Qt Creator中配置项目
- 启动Qt Creator
- 在Qt中,单击打开项目
- 选择Twain_App_sample01\src文件夹中的文件src.pro
- 在配置项目中,选择工具包Desktop Qt 5.5.0 MSVC2013 64位
- 单击"配置项目"按钮
-
创建并使用字符串转换函数
-
在DSMInterface.cpp源文件中,添加以下函数:
wchar_t *convertCharArrayToLPCWSTR(const char* charArray) { wchar_t* wString=new wchar_t[4096]; MultiByteToWideChar(CP_ACP, 0, charArray, -1, wString, 4096); return wString; }
-
在DSMInterface.cpp中,函数LoadDSMLib,替换
if((gpDSM=LOADLIBRARY(_pszLibName)) != 0)
带有
if((gpDSM=LOADLIBRARY(convertCharArrayToLPCWSTR(_pszLibName))) != 0)
-
-
编译-第1部分
- 现在我从链接器收到一条消息:
DSMInterface.obj:-1: error : LNK2019: unresolved external symbol "int __cdecl VerifyEmbeddedSignature(wchar_t const *)" (?VerifyEmbeddedSignature@@YAHPEB_W@Z) referenced in function "bool __cdecl LoadDSMLib(char *)" (?LoadDSMLib@@YA_NPEAD@Z)
我将Twain_App_sample01\src\VerifySignature.cpp文件添加到项目中,现在此消息不见了(感谢Itay Grudev(
-
编译-第2部分
- 我现在有另一条消息
..srcVerifySignature.cpp(13) : fatal error C1083: Cannot open include file: 'afx.h': No such file or directory
事实上,我是从错误的工具开始的。感谢Ben让我走上正轨。我需要MFC。因此,正确的解决方案是使用Visual Studio 2015。我可以用它来建造它。
- vcruntime.h 从 Windows 包含文件夹中丢失?
- 禁止显示有关包含文件中 #pragma 包的警告
- 无法打开包含文件:在 vs2017 上'QtWidgets/qtwidgetsglobal.h'
- 包含文件 <sched_yield.h>在我的 RHEL 5 上找不到
- 尝试使用 MSVC 从源代码构建 qt 创建器:无法打开包含文件:"stddef.h":没有这样的文件或目录
- 无法打开包含文件'Graphics.hpp'没有这样的文件或目录,Visual Studio的其他包含不起作用
- 为什么 C++ 编译器在"c:program filesgnu emacsinclude"中查找包含文件?
- 包含文件中的 Typdef "未在此范围内声明"
- 错误: C1083: 无法打开包含文件:"boost/asio.hpp": 没有此类文件或目录
- SFML c ++ 当包含文件内游戏中发生事件时,如何使用铃声函数为我的游戏创建声音类?
- 在Windows上设置CMake和vcpkg时出错"无法打开包含文件"
- 致命错误 C1083:无法打开包含文件:"GL/glew.h":没有此类文件或目录
- Qt自动生成的.rc文件无法打开包含文件'windows.h'
- Visual Studio 停止识别任何包含文件
- 无法打开包含文件:"签证.h"
- 如何检查每个头文件是否包含必需的包含文件?
- Protobuf:无法在 message.pb.h 文件中打开包含文件 common.h
- extern 关键字在包含文件头文件C++
- 错误:无法打开包含文件:"MQTTAsync.h":没有此类文件或目录
- #include "date.h" 创建错误 E1696 无法打开源文件"date.h",也无法打开包含文件:没有这样的文件或目录