Есть ли способ узнать, сколько памяти я могу прочитать из другого процесса, используя ReadProcessMemory?
Если я попытаюсь прочитать слишком много памяти с определенного адреса, он вернет код ошибки 299 и будет считано 0 байт.
Я предполагаю, что это потому, что я пытаюсь читать за пределами выделенного буфера процесса.
Проверка того, сколько памяти доступно для чтения в другом процессе
Ответы (1)
Насколько я знаю, единственный способ - попытаться прочитать его. ReadProcessMemory
вернет 0, если блок памяти, который вы хотите прочитать, не полностью доступен в процессе, например, его часть не выделена.
Использование меньшего nSize
(1024 или 512 или даже 1) является обходным путем.
person
CTQY
schedule
05.12.2011
VirtualQueryEx
, чтобы узнать об областях памяти, а затем прочитать их по отдельности. - person Roland Illig   schedule 01.10.2011