Archived

This topic is now archived and is closed to further replies.

Scanning the Memory

This topic is 5245 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hi, I want to create a program that scans the RAM then dumps it on screen. I know that I have to use pointers. I want to set the starting address of the pointer to zero then loop through the entire memory byte by byte. Basically here''s the screnario: BYTE *Eye = 0x00000000; for (int x=0;x<(memsize);x++) { cout << (BYTE)(*Eye); Eye += 0x00000001; } Will this work? Do I have the right idea? Hey, don''t forget to visit my page... by clicking here!

Share this post


Link to post
Share on other sites
I wouldn''t recommend doing this (even if it doesn''t work) unless you only have about 1000 bytes of memory. Even on a computer with only 128 mb of RAM you''ll be calling cout 128*1024*1024=134217728 times.



-If you see this image I may or may not be online
My website

Share this post


Link to post
Share on other sites
It won''t work anyway because modern OS''s (I assume you use Windows?) use protected memory. 0x00000000 will point to the start of the virtual memory table for the current process, not the start of physical memory.

Share this post


Link to post
Share on other sites
You can''t look at all the memory that way. Every program is run in its own separate "address space", where it has exclusive access to four gigs of RAM, which other programs normally can''t touch. If you want to look at other processes'' memory, look up ReadProcessMemory and WriteProcessMemory.


"For crying out loud, she has fishes coming out of her head on either side. How can you find this hot?!"
"If anyone sees a suspicious, camouflaged factory being carried across the desert, they should report it immediately."

Share this post


Link to post
Share on other sites