TestMemory(*mem)
Posted: Thu Aug 14, 2014 9:00 am
Please, add this function
Code: Select all
Procedure.b TestMemory(*Pointer) ;Only Windows
Protected mbi.MEMORY_BASIC_INFORMATION
Protected Result.b = #False, dwWrote
dwWrote = VirtualQuery_(*Pointer, @mbi, SizeOf(MEMORY_BASIC_INFORMATION))
If dwWrote
If mbi\BaseAddress+mbi\RegionSize >= *Pointer+1
If mbi\Protect & (#PAGE_READONLY | #PAGE_READWRITE | #PAGE_EXECUTE_READ | #PAGE_EXECUTE_READWRITE)
Result = #True
EndIf
EndIf
EndIf
ProcedureReturn Result
EndProcedure
*mem = AllocateMemory(10)
If *mem
Debug TestMemory(*mem)
FreeMemory(*mem)
EndIf
*mem = Random(100000) ;Random value
Debug TestMemory(*mem)