Qt自动生成的.rc文件无法打开包含文件'windows.h'
Qt automatically generated .rc file cannot open include file 'windows.h'
在我的Qt 5.9.1项目中,我想将版本信息添加到可执行文件中以帮助调试。因此,我在"Project.pro"文件中添加了VERSION = 1.0.0
,该文件自动生成了一个"Project_resource.rc"文件,正如Qt版本所期望的那样。
但是,项目现在无法编译,错误RC1015: cannot open include file 'windows.h'
在"Project_resource.rc"中的行#include <windows.h>
。我知道编译器在程序的另一点知道windows.h
,因为main.cpp
我#include <windows.h>
并使用那里的函数,并且成功编译。我只是想不通为什么"Project_resource.rc"找不到相同的文件。
注意:我在"Project.pro"的VERSION = 1.0.0
行上方有以下内容,这就是我的main.cpp
可以找到<windows.h>
的方式。
INCLUDEPATH += "C:/Program Files (x86)/Windows Kits/10/Include/10.0.10240.0/ucrt"
LIBS += -L"C:/Program Files (x86)/Windows Kits/10/Lib/10.0.10240.0/ucrt/x64"
INCLUDEPATH += "C:/Program Files (x86)/Windows Kits/10/Include/10.0.10240.0/um"
LIBS += -L"C:/Program Files (x86)/Windows Kits/10/Lib/10.0.10240.0/um/x64"
INCLUDEPATH += "C:/Program Files (x86)/Windows Kits/10/Include/10.0.10240.0/shared"
请记住,.rc文件有自己的ExtraalIncludeDirectory。
您的项目可能已将 Windows SDK 正确设置为包含目录值之一(因此您的.cpp文件解析 windows.h 头文件(,而不是 .rc 文件(这可以解释为什么无法从中解析 windows.h(。
如果您使用的是Visual Studio 2019,请尝试以下操作:
- 右键单击解决方案资源管理器上的 .rc 文件
- 转到资源 ->常规
- 编辑其他包含目录
- 包括 $(WindowsSDK_IncludePath( 宏
- 请务必接受并保存更改。
完成此操作后,您应该立即停止看到此错误。 如果".rc 文件无法打开包含文件"指的是其他文件,只需尝试相同的操作,但在步骤 4 中使用正确的宏/路径值。
相关文章:
- 读取大文件(>2GB)(文本文件包含以太网数据)并通过不同参数随机访问数据的最佳方法是什么?
- C++文件包含多行
- CMake 如何强制third_party库将项目文件包含在当前项目源目录中?
- 是否可以将要"ShellExecute"的文件包含在 dll 中?如果是这样,"ShellExecute"中的文件位置应该是什么?
- C++ 逐行从文件(包含空格)读取数据
- 在 C++ 中,.h 文件包含文件但不起作用
- 生成的资源文件包含奇怪的包含文件
- 可变参数类的文件包含问题
- 为什么文件命令声明可执行文件包含"debug_info"
- 可以将标头文件包含在多个源文件中,而无需重复保护
- 为什么将.HPP文件包含在.h文件中
- Qt C++:将所有库文件包含在项目文件夹中
- 有条件地将文件包含在C++标头中
- 将多个原型文件包含在一个项目中会导致protobuf_AssignDescriptorsOnce()已经有一个主体
- 有没有办法将文件包含在C++中的所有项目文件中
- 将外部.asm文件包含到C++代码中
- 什么是"pch.h",为什么需要将其作为第一个头文件包含在内?
- 该头文件包含DirectX 12中的ThrowIfFailed()
- QT C :函数的多个定义当Header文件包含在MainWindow.h中时
- QT创建者错误地处理标头文件包含来自Directory