UNICODE変換

[戻る]
みー 2007/10/30(火) 14:45:06
マルチバイト文字をUNICODEに変換する処理を作っているのですが、いくつかある、関数を試し
に試行錯誤していて、「mbstowcs_s」を使った場合だけ、上手く変換ができません。
(_wcstombszとかだと、普通に出来ました。)使い方自体よく分からないので、パラメータも
何種類か試してみたのですが。。。詳しい方ご教授ください!!
※ちなみに、引数の「strlen(pszChar)*2」の部分については、試しに7〜20の範囲で直値でも
やってみましたが、ダメでした。


    int    nLen;
    char    pszChar[20];
    WCHAR*    pszWchar;

    memset(pszChar,0x00,sizeof(pszChar));

    strncpy_s(pszChar,"ABCあいう",20);

    nLen = ::MultiByteToWideChar(CP_THREAD_ACP,0,pszChar,-1,NULL,0);
    pszWchar = new WCHAR[nLen];

    size_t nNameSize = 0;
    errno_t err = 0;

    err = mbstowcs_s(&nNameSize,
            pszWchar, 
            strlen(pszChar)*2,
            pszChar,
            _TRUNCATE);

    delete    pszWchar;

みー 2007/10/30(火) 14:46:35
[[解決]]
すみません。再送しちゃいました。

古いスレッドには追加発言できません。