Parsuji byte array, z pozice 0x22c potřebuji přečít 2 bajty [BA 03]. a převést na 954 Ale vrací mi to záporné číslo. (očekávám v DEC 186 a 3, ale dostanu -70 a 3). Čím by to mohlo být?
void ReadData(DWORD offset, const void* cvData, char* outStr) {
const unsigned char * const bytes = static_cast<const unsigned char *>(cvData);
memcpy(outStr, &bytes[offset], sizeof(outStr) - 1);
}
int GetFreq() {
const void * cvData;
if (GetSharedMemory(_T("SharedMemory"), 0x23E8, cvData))
{
char tmpData[2];
ReadData(0x22c, cvData, tmpData);
int b1 = tmpData[0];
int b2 = tmpData[1];
// ???
return 1;
} else {
return 0;
}
}
Díky za radu