在资源文件中使用宏
Using macros in resource files
我想在我的。rc文件中使用#define字符串。例如,假设我在我的。rc文件中#include了这个。h文件:
#if defined(RED_BUILD)
#define CAPTION_TEXT "Red Window"
#define PROMPT_TEXT "Red Prompt"
#else
#define CAPTION_TEXT "Blue Window"
#define PROMPT_TEXT "Blue Prompt"
#endif
在我的。rc文件中,假设我有这样一个对话框:
IDD_Dialog DIALOG 0, 0, 286, 258
STYLE WS_POPUP | WS_CAPTION
CAPTION "First " CAPTION_TEXT " Dialog"
BEGIN
LTEXT "First " PROMPT_TEXT, -1, 4, 80, 120, 8
LTEXT "Second " PROMPT_TEXT, -1, 4, 90, 120, 8
END
然而,资源编译器不喜欢这样,给出一个"BEGIN expected in dialog"。有什么方法我可以哄骗预编译器来处理这个?
我目前的解决方案是#如果定义(RED_BUILD)在我的。rc文件,这工作,但不是理想的,因为我有数百个提示,我需要改变。
最好的方法是维护不同的资源文件并编译它们,而不是在一个大的"ifdef "资源文件中处理所有内容。
相关文章:
- 具有瞬态资源的RAII类
- C++ 雷神库 - 使用资源加载器类时出现问题(不命名类型)
- 允许从 std::map 的密钥窃取资源?
- 为测试目标创建具有不同源文件夹的文件
- 参考资源文件VC++中的$(SolutionDir)
- 如何维护资源管理器项目视图中当前可见的项目列表
- 将图像添加到资源文件夹UWP C++
- 将 std::allocate_shared 与多态资源分配器一起使用
- 使用RAII在给定次数的迭代后重新分配资源
- 资源管理设计模式
- 视觉工作室项目.提取源文件夹名称
- 如何跨平台将二进制资源构建到程序中?
- 生成一个生成文件,该生成文件使用Automake在一个步骤中编译和链接所有源文件
- SetDlgItemInt 不会更改嵌入资源的编辑框
- Klocwork Inside的资源泄漏
- make 命令如何避免重新编译未更改的源文件?
- C++两个源文件之间共享的枚举的静态实例
- Windows 资源源文件中 #define 的含义
- 如何让资源黑客在.rc源文件上工作
- 在cmake目标的解决方案资源管理器中添加一些源文件的头依赖项