我试图通过资源文件将DialogBox加载到WIN32应用程序中,但是CMake抛出语法错误。
我的资源文件中的代码:
#include "resource.h"
IDD_ABOUTDIALOG DIALOG DISCARDABLE 0, 0, 239, 66
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "My About Box"
FONT 8, "MS Sans Serif"
BEGIN
DEFPUSHBUTTON "&OK",IDOK,174,18,50,14
PUSHBUTTON "&Cancel",IDCANCEL,174,35,50,14
GROUPBOX "About this program...",IDC_STATIC,7,7,225,52
CTEXT "An example program",
IDC_STATIC,16,18,144,33
END
将加载资源的C代码:
int ret = DialogBox(GetModuleHandle(NULL),
MAKEINTRESOURCE(IDD_ABOUTDIALOG), hwnd, AboutDlgProc);
资源头文件:
#ifndef WIN32_RESOURCE_H
#define WIN32_RESOURCE_H
#define IDD_ABOUTDIALOG 101
#endif //WIN32_RESOURCE_H
CMake打印的错误消息:
Resource.rc:3:语法错误
我在CLION(C11标准版)中使用MinGW
答案 0 :(得分:1)
通常,在系统头文件中定义STYLE
参数,例如窗口样式(WS_
)和对话框样式(DS_
)。
因此,要在使用这些值之前添加#<windows.h>
,必须#include
编辑可能或相似的头文件。