2011-01-12 14 views
1

私は国際化されたかなり標準的なC++ win32アプリケーションを持っています。問題は、翻訳されたrcファイルがコンパイルされないことです。コンパイルを行う英語rcとコンパイルしない翻訳rcsの唯一の違いは、LANGUAGE、code_pageおよび翻訳されたテキストです。たとえば:ローカライズされたrcファイルはコンパイルされません

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

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

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

になった私は、日本のRCをコンパイルしようとすると、私は次のエラーを取得する

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

になった:

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

Googleはこの場合特に役に立ちませんでした。何か案は?

答えて

3

問題が見つかりました。翻訳されたrcファイルはUTF-8で、rc.exeはANSIまたはUTF-16LEのみをサポートしています。

関連する問題