C++ - VirtualQueryEx для процессов x64

Вот мой код, который я использую для сканирования памяти процессов x86:

    unsigned char *p = NULL;
    MEMORY_BASIC_INFORMATION info;

    for (p = NULL;
        VirtualQueryEx(process, p, &info, sizeof(info)) == sizeof(info);
        p += info.RegionSize)
    {

... 

     }

Код работает правильно. Но когда я использую этот код для сканирования памяти x64-процессов, результат неверный!

Я пытался изменить MEMORY_BASIC_INFORMATION к MEMORY_BASIC_INFORMATION64но:

'SIZE_T VirtualQueryEx(HANDLE,LPCVOID,PMEMORY_BASIC_INFORMATION,SIZE_T)': cannot convert argument 3 from 'MEMORY_BASIC_INFORMATION64 *' to 'PMEMORY_BASIC_INFORMATION'

Я много искал, но не мог понять, как решить.

0 ответов

Другие вопросы по тегам