LPWSTR dscStr = "TEST STRING AAAAAA";
char buffer[5000];
wcstombs(buffer, dscStr, sizeof(dscStr));
return scope.Close(String::New(buffer)); // FAILED
LPWSTR(またはLPCWSTR)をv8::Stringに変換する必要があります。
char const *
を に代入しようとしているため、投稿したコードはコンパイルすることさえできませんwchar_t *
。
これはうまくいくはずです(私は何も知らないv8::String
ので、最後の行のコンストラクター呼び出しが正しいと仮定しています)
LPCWSTR dscStr = L"TEST STRING AAAAAA";
// LPCWSTR is an alias for wchar_t const *
// The L before the string literal indicates it is a wide string literal
char buffer[5000];
wcstombs( buffer, dscStr, wcslen(dscStr) );
// Need wcslen to compute the length of the string
return scope.Close(String::New(buffer));