UNICODE

//http://msdn.microsoft.com/ja-jp/library/dybsewaf(VS.80).aspx

・OSの内部処理
Win98系 : MBCS処理
WinNT系 : UNICODE処理

・定義
_UNICODE を定義する

・エントリポイント
SDK : _tWinMain にする
_MBCS→WinMain
_UNICODE→wWinMain

MFC : wWinMainCRTStartup を指定する

#if defined(UNICODE) || defined(_UNICODE)
#pragma comment( linker, "/entry:\"wWinMainCRTStartup\"" )
#endif

・ワイド文字を使用する

TCHAR c;
_MBCS→CHAR c; (char)
_UNICODE→WCHAR c; (short)

LPTSTR p;
_MBCS→LPSTR p; (char*)
_UNICODE→LPWSTR p; (short*)

LPCTSTR p;
_MBCS→LPCSTR p; (const char*)
_UNICODE→LPCWSTR p; (const short*)

_T("hoge")
_MBCS→"hoge"
_UNICODE→L"hoge"

_T('A')
_MBCS→'A'
_UNICODE→L'A'

・変換の注意
mbstowcs();などを使うときはsetlocale()を呼び出しておかなければならない。
::setlocale(LC_ALL,"");
最終更新:2009年08月06日 15:27
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。