Speicheradresse aus Registry lesen und mit ReadProcessMemory verwenden scheitert



  • HKEY hKey;
    RegCreateKeyEx(HKEY_CURRENT_USER,"Software\\test",0,0,REG_OPTION_NON_VOLATILE,KEY_ALL_ACCESS,NULL,&hKey,0);
    DWORD test = 0;
    DWORD test_dwData = sizeof(DWORD);
    RegQueryValueEx(hKey,"Y_POS_ADRESS",0,0,(BYTE*)&test ,&test _dwData);
    		RegCloseKey(hKey);
    

    in dem Registryeintrag welcher ein Reg_DWORD ist steht als hexwert eine speicheradresse. 1f0012

    Diesen wert möchte ich nun mit

    HWND hWnd;
    HANDLE hproc;
    DWORD procid; 
    hWnd = FindWindow(0,TEXT("Test"));
    GetWindowThreadProcessId(hWnd, &procid);
    hproc = OpenProcess(PROCESS_VM_READ, FALSE, procid); 
    float testvalue;
    ReadProcessMemory(hproc, (LPCVOID) (test),     &testvalue, sizeof(testvalue), NULL);
    

    Auslesen. Allerdings nimmt akzeptiert ReadProcessMemory die aus der registry ausgelesene Speicheradresse nicht als solche. 😞

    Weis jemand weiter wie ich das Problem lösen kann ?



  • Fehlermeldung?
    Vermutlich reicht "PROCESS_VM_READ" nicht, oder es ist schon früher ein Fehler passiert; da Du ja keine Rückgabewerte auswertest, fällt Dir das ja gar nicht auf...



  • hm ne es passiert einfach nichts

    ReadProcessMemory(hproc, (LPCVOID) (0x1f0012), &testvalue, sizeof(testvalue), NULL);

    dagegen geht ohne probleme.
    Ich hab den Verdacht das nur 1f0012 und nicht 0x1f0012 aus der registry ausgelesen wird weis aber nicht wie ich das 0x dazu bekommen kann^^


Anmelden zum Antworten