Синтаксическая ошибка: "Константа"

Я пытаюсь изучить немного программирования WinAPI на C++ с помощью этого руководства. http://www.winprog.org/tutorial/resources.html

Сначала автор определяет константу в 'resource.h':

#define IDI_MYICON 101

а затем он использует его в файле.cpp:

#include "resource.h"
IDI_MYICON ICON "my_icon.ico"

Когда я пытаюсь это сделать, я получаю следующую ошибку: ошибка C2059: Syntaxfehler: "Konstante", что приводит к синтаксической ошибке: "Constant (существительное)". Что я делаю здесь неправильно?

Изменить: Хорошо, как кажется, это была очень глупая ошибка с моей стороны. Хорошо заслуженный - репутация. Спасибо за ответ!

2 ответа

Решение

а затем он использует его в файле.cpp

#include "resource.h"
IDI_MYICON ICON "my_icon.ico"

Это проблема. Приведенный выше код должен быть в файле.RC, а затем этот файл должен быть скомпилирован с использованием компилятора ресурсов, а не компилятора исходного кода C++.

Эта строка:

#include "resource.h"

Действителен в.cpp файле. Полезно так же IDI_MYICON define можно использовать как при создании ресурса, так и при обращении к ресурсу в исходном коде.

Эта строка:

IDI_MYICON ICON "my_icon.ico"

НЕ действует в файле.cpp, только в файле.rc!

IDI_MYICON ICON "my_icon.ico"

такой же как

101 ICON "my_icon.ico"

что не имеет смысла, и это синтаксически неправильно.

Другие вопросы по тегам