2013-09-16 2 views
0

При изменении языка элементов ресурса в моем визуальной студии проекте с английского на азербайджан Я получаю эту ошибку:VS 2008 Ошибки типа ресурса при смене языка

error RC2144 : PRIMARY LANGUAGE ID not a number

и эта линия:

LANGUAGE LANG_AZERI_CYRILLIC, SUBLANG_AZERI_CYRILLIC 

Что здесь происходит?

// Microsoft Visual C++ generated resource script. 
// 
#include "resource.h" 
#include <windows.h> 
#define APSTUDIO_READONLY_SYMBOLS 
///////////////////////////////////////////////////////////////////////////// 
// 
// Generated from the TEXTINCLUDE 2 resource. 
// 
#ifndef APSTUDIO_INVOKED 
#include "targetver.h" 
#endif 
#include "winres.h" 

ответ

1

Решение должно было изменить строку LANGUAGE LANG_AZERI_CYRILLIC, SUBLANG_AZERI_CYRILLIC из файла ресурсов на LANGUAGE LANG_AZERI, SUBLANG_AZERI_CYRILLIC, как определено here. Кажется, что визуальная студия сгенерировала этот код ошибочно.

2

Ошибка в том, что дизайнер ресурсов с использованием постоянного (идентификатор языка), определенный в winres.h, но winres.h не включена в файл ресурсов.

Добавьте эту строку в resource.rc (просмотр кода в виде текста, а не из диалогового редактора), это будет решить эту проблему:

#define APSTUDIO_READONLY_SYMBOLS 
#include <winres.h> 
#undef APSTUDIO_READONLY_SYMBOLS 

PS: Вы должны также определить APSTUDIO_READONLY_SYMBOLS держать включают winres .h потому что Visual Studio всегда будет удалять #include

+0

С Visual Studio 2015 мне пришлось добавлять эти строки в 'resource.h', поскольку они сохранялись удаляется из файла '.rc'. – Malvineous

Смежные вопросы