CStringをBYTE配列に変換する必要があります。理由はわかりませんが、インターネットで見つけたものはすべて機能しません:(たとえば、私は
CString str = _T("string");
私はそうしようとしてきました1)
BYTE *pbBuffer = (BYTE*)(LPCTSTR)str;
2)
BYTE *pbBuffer = new BYTE[str.GetLength()+1];
memcpy(pbBuffer, (VOID*)(LPCTSTR)StrRegID, str.GetLength());
3)
BYTE *pbBuffer = (BYTE*)str.GetString();
そして常にpbBufferにはstrの最初の文字だけが含まれています
DWORD dwBufferLen = strlen((char *)pbBuffer)+1;
は2です
しかし、const stringを使用する場合:
BYTE *pbBuffer = (BYTE*)"string";
pbBufferには文字列全体が含まれています
私の間違いはどこにありますか?