MFCアプリケーションはマルチバイト文字セット(MBCS)を使用します。OSはWindows7です。
仮想キーボードで中国語の簡体字を入力することはできますが、Google翻訳からアプリケーションの編集ボックスに中国語の文字をコピーして貼り付けると、ジャンク文字「????」が表示されます。
これはMBCSアプリケーションの既知の問題ですか?回避策はありますか?
MFCアプリケーションはマルチバイト文字セット(MBCS)を使用します。OSはWindows7です。
仮想キーボードで中国語の簡体字を入力することはできますが、Google翻訳からアプリケーションの編集ボックスに中国語の文字をコピーして貼り付けると、ジャンク文字「????」が表示されます。
これはMBCSアプリケーションの既知の問題ですか?回避策はありますか?
マルチバイト アプリにコピー アンド ペーストすると、Unicode 文字がローカル コード ページに変換されます。変換できない場合は、? が返されます。アプリを Unicode でコンパイルして配布する必要があります。そうしないと、常にこの種の問題と格闘することになります。
Unicode で再コンパイルできない場合は、「貼り付け」アクションをキャッチして、クリップボードを自分で処理してみてください。の値を使用GetClipboardData
して読み取りCF_UNICODETEXT
ます。これが有効なテキストになります。次に、正しいマルチバイト形式への独自の変換を行う必要があります。