2011-01-12 7 views
1

Ich habe eine hübsche Standard-C++ Win32-Anwendung, die internationalisiert wurde. Das Problem ist, dass die übersetzten RC-Dateien nicht kompiliert werden. Die einzigen Unterschiede zwischen dem englischen rc, das kompiliert, und den übersetzten rcs, die nicht kompiliert werden, sind die LANGUAGE, code_page und der übersetzte Text. Zum Beispiel:Lokalisierte RC-Datei wird nicht kompiliert

#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU) 
#ifdef _WIN32 
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US 
#pragma code_page(1252) 
#endif //_WIN32 

wurde

#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_JPN) 
#ifdef _WIN32 
LANGUAGE LANG_JAPANESE, SUBLANG_DEFAULT 
#pragma code_page(932) 
#endif //_WIN32 

und

IDC_TOOLMENU MENU 
BEGIN 
    POPUP "&File" 
    BEGIN 
     MENUITEM "E&xit",      IDM_EXIT 
    END 
    POPUP "&Help" 
    BEGIN 
     MENUITEM "&About ...",     IDM_ABOUT 
    END 
END 

wurde

IDC_TOOLMENU MENU 
BEGIN 
    POPUP "&ファイル" 
    BEGIN 
     MENUITEM "閉&じる",      IDM_EXIT 
    END 
    POPUP "&ヘルプ" 
    BEGIN 
     MENUITEM "&バージョン情報 ...",    IDM_ABOUT 
    END 
END 

Wenn ich versuche, die japanische rc ich folgende Fehlermeldung zu kompilieren:

1>.\ja\Resources.rc(47) : error RC2121 : BEGIN expected in menu 
1>.\ja\Resources.rc(47) : error RC2104 : undefined keyword or key name: 

Google war in diesem Fall nicht besonders hilfreich. Irgendwelche Ideen?

Antwort

3

Das Problem gefunden. Meine übersetzten RC-Dateien waren UTF-8 und rc.exe unterstützt nur ANSI oder UTF-16LE.

Verwandte Themen