在 Windows C++ 项目中包含“resource.h”

问题描述 投票:0回答:2

很抱歉问了一个可能非常初学者的问题。我正在使用 Microsoft Visual Studio Community 2022(64 位)。我正在研究如何构建(一个非常简单的)Windows 应用程序。我创建了一个 ID 为

IDR_MENU1
的菜单资源,但是当我尝试加载它时,出现了
Error   C2065   'IDR_MENU1': undeclared identifier
编译器错误。
通过以下方式包含
resource.h
的完整路径,一切正常:

#include "C:/full_path_to_resource_h/resource.h"

问题是,是否应该这样做,或者我是否缺少某些项目或 IDE 设置。尽管我已经有了一个可行的解决方案,但我想学习最佳实践。

c++ user-interface winapi
2个回答
0
投票

建议检查Windows桌面应用程序模板创建的项目的架构。对于名为 WindowsProject3 的 Windows 应用程序,WindowsProject3 源中包含的 WindowsProject3 标头将包含 resource.h.

在 Visual Studio 资源视图中编辑 WindowsProject3.rc 很方便。


0
投票

我强烈建议使用 CMake,即使在 Windows 上也是如此。使用 CMake,您可以轻松指定从何处获取包含内容。有很多教程,并且 CMake 是一种标准化工具,可以使跨平台应用程序更易于管理。可能是一个额外的学习工具,但它是值得的!此外,您不再依赖于 Visual Studio 的项目文件,理论上可以使用 VS Code 并使用 MSVC 编译器

进行编译
© www.soinside.com 2019 - 2024. All rights reserved.