Мы не должны включать windows.h или winnt.h до .rc - эти заголовки - для предназначены для компиляторов c / c ++ и не предназначены для RC (компилятор ресурсов, который обрабатывает файл .rc ). в результате, если мы включим такие файлы, мы можем получить ошибки.
Нам нужно включить файлы #include <winres.h>
до .rc . Этот файл специально разработан для компилятора RC . Внутренне это включало:
#include <winuser.rh>
#include <commctrl.rh>
#include <dde.rh>
#include <winnt.rh>
#include <dlgs.h>
#include <winver.h>
и определите некоторые макросы.
Все стандартные определения окон, которые нам нужны / используются в rc файле, существуют в winres.h (и он включает в себя). С другой стороны, в нем нет никаких дополнительных символов / определений, которые существуют в windows.h - это не нужно для rc и некоторое время может вызвать ошибки.
Так просто #include <winres.h>
в начале файлов ресурсов и все будет ОК.