Unicodeサポートを追加しようとしているレガシーVC++6アプリを使用していますが、渡される文字列にW2CA()マクロを使用すると、unsignedcharを期待するrpc呼び出しを呼び出す関数があります。 、一部のUnicode文字列を正しく変換できない可能性があると想定して正しいですか?たとえば、我们的T+G2が問題になると思います。wchar_tバージョンを作成したほうがよいかどうかを判断しようとしているので、質問します。
ありがとう。
Unicodeサポートを追加しようとしているレガシーVC++6アプリを使用していますが、渡される文字列にW2CA()マクロを使用すると、unsignedcharを期待するrpc呼び出しを呼び出す関数があります。 、一部のUnicode文字列を正しく変換できない可能性があると想定して正しいですか?たとえば、我们的T+G2が問題になると思います。wchar_tバージョンを作成したほうがよいかどうかを判断しようとしているので、質問します。
ありがとう。
はい、UnicodeからANSIへのカバレッジがすべての文字の変換に成功することを期待することはできません。ただし、ANSIの代わりにUTF-8などの他のエンコーディングを使用できます。
質問のためのMSDNへの良いエントリポイント:
lpDefaultChar [in]
オプション。指定されたコードページで文字を表現できない場合に使用する文字へのポインタ。関数がシステムのデフォルト値を使用する場合、アプリケーションはこのパラメーターをNULLに設定します。システムのデフォルト文字を取得するために、アプリケーションはGetCPInfoまたはGetCPInfoEx関数を呼び出すことができます。