现在有如下的一个资源rc文件,
#include <resource.h>
#define DLG_MAIN 1
#define IDC_COUNT 101
DLG_MAIN DIALOG 50, 50, 113, 40
STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "例子"
FONT 9, "宋体"
{
LTEXT "", IDC_COUNT, 62, 16, 40, 10
}
使用rc命令可以编译为res文件,没有问题;如果加入一句,
{
LTEXT "结果:", -1, 35, 16, 25, 10
LTEXT "", IDC_COUNT, 62, 16, 40, 10
}
增加一个只显示文字提示的静态文本控件;LTEXT是表示静态文本控件,后面双引号中是静态文本控件的文字;然后是控件ID,IDC_COUNT是控件ID,因为代码中要使用此控件,所以要给它一个ID,纯粹的只提示文字、代码中不使用的控件,可设其ID为-1;然后四个数字是控件位置和大小;
看上去没什么错,再rc就出错,
查一下资料,有的网友碰到此问题是rc文件中少写一个双引号之类;
仔细看一下前面rc文件,并无此类问题;
如果把2个静态文本控件的后一个去掉,单独编译
LTEXT "结果:", -1, 35, 16, 25, 10
这一行;也是一样的会出错;那么问题是出在这一行;
这可能是中文或者全角符号引起的问题,试了一下只要把全角冒号改为半角冒号就可以rc通过;
这可能和文件保存的编码有关,ANSI不认识全角,存为utf-8编码全角应也可以;