Мне нужно преобразовать CString в массив BYTE. Я не знаю почему, но все, что я нашел в Интернете не работает :( К примеру, у меня естьНевозможно преобразовать 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 содержит только первую букву ул
DWORD dwBufferLen = strlen((char *)pbBuffer)+1;
является 2
Но если я использую константную строку:
BYTE *pbBuffer = (BYTE*)"string";
pbBuffer содержит всю строку
Где моя ошибка?