slesh
05.06.2007, 12:50
Вот сталкнулся с проблемой выделения памяти в нужном для меня месте.
юзаю код:
windows.VirtualAlloc(pointer($00400000),$6000,MEM_ COMMIT, PAGE_EXECUTE_READWRITE );
showmessage(sysutils.SysErrorMessage(GetlastError) );
При запуске выдает ошибку: The parameter is incorrect
В опциях проекта указал IMAGE BASE = $00600000
И вообще через дибагер запускаю - этот участок памяти абсолютно свободен! т.е. никем не выделен!
Думал баг из-за дельвы. Но попробывал написать на ASM - тотже результат.
Также заметил что при параметрах MEM_COMMIT+MEM_RESERVE вылетает ошибка: Attempt to access invalid address
юзаю код:
windows.VirtualAlloc(pointer($00400000),$6000,MEM_ COMMIT, PAGE_EXECUTE_READWRITE );
showmessage(sysutils.SysErrorMessage(GetlastError) );
При запуске выдает ошибку: The parameter is incorrect
В опциях проекта указал IMAGE BASE = $00600000
И вообще через дибагер запускаю - этот участок памяти абсолютно свободен! т.е. никем не выделен!
Думал баг из-за дельвы. Но попробывал написать на ASM - тотже результат.
Также заметил что при параметрах MEM_COMMIT+MEM_RESERVE вылетает ошибка: Attempt to access invalid address