Copiar Buffer en proceso actual o Remoto usando ReadProcessMemory
BOOL ReadProcessMemory( [in] HANDLE hProcess, [in] LPCVOID lpBaseAddress, [out] LPVOID lpBuffer, [in] SIZE_T nSize, [out] SIZE_T *lpNumberOfBytesRead );
La clase esta en que se le pasa como parametro nSize el caracter a leer por ejemplo 'H' que es 0x48 o 72 en Hexadimal, y donde lo va a guardar el numero de caracteres leidos es en *lpNumberOfBytesRead donde le pasamos la direccion de nuestro buffer.
pDestOffset = (SIZE_T*)((BYTE*)pNewBuffer + I);
// Esta llamada en realidad no copia correctamente, pero se deja igual que en Delphi ReadProcessMemory( GetCurrentProcess(), // handle del proceso pNewBuffer, // dirección origen (??) pDummyBuffer, // destino temporal ((BYTE)AString.data() + I), // tamaño (??) (SIZE_T*)pDestOffset // bytes leídos );
Es una nueva forma de escribir en el proceso normal o remoto