ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/RomCheater/trunk/Win32/Sojaner.MemoryScanner/PEReader.cs
(Generate patch)

Comparing trunk/Win32/Sojaner.MemoryScanner/PEReader.cs (file contents):
Revision 160 by william, Mon May 28 05:30:14 2012 UTC vs.
Revision 161 by william, Mon May 28 05:55:59 2012 UTC

--- trunk/Win32/Sojaner.MemoryScanner/PEReader.cs	2012/05/28 05:30:14	160
+++ trunk/Win32/Sojaner.MemoryScanner/PEReader.cs	2012/05/28 05:55:59	161
@@ -30,23 +30,22 @@ namespace Sojaner.MemoryScanner
                 size = Marshal.SizeOf(typeof(IMAGE_DOS_HEADER));
                 data = br.ReadBytes(size);
                 pinnedPacket = GCHandle.Alloc(data, GCHandleType.Pinned);
-                IMAGE_DOS_HEADER IMAGE_DOS_HEADER = (IMAGE_DOS_HEADER)Marshal.PtrToStructure(pinnedPacket.AddrOfPinnedObject(), typeof(IMAGE_DOS_HEADER));
+                IMAGE_DOS_HEADER DOS_HEADER = (IMAGE_DOS_HEADER)Marshal.PtrToStructure(pinnedPacket.AddrOfPinnedObject(), typeof(IMAGE_DOS_HEADER));
                 pinnedPacket.Free();
                 #endregion
 
                 // skip the old dos stub
-                br.BaseStream.Seek(IMAGE_DOS_HEADER.e_lfanew, SeekOrigin.Begin);
+                br.BaseStream.Seek(DOS_HEADER.e_lfanew, SeekOrigin.Begin);
 
                 #region IMAGE_NT_HEADERS
                 size = Marshal.SizeOf(typeof(IMAGE_NT_HEADERS));
                 data = br.ReadBytes(size);
                 pinnedPacket = GCHandle.Alloc(data, GCHandleType.Pinned);
-                IMAGE_NT_HEADERS IMAGE_NT_HEADERS = (IMAGE_NT_HEADERS)Marshal.PtrToStructure(pinnedPacket.AddrOfPinnedObject(), typeof(IMAGE_NT_HEADERS));
+                IMAGE_NT_HEADERS NT_HEADER = (IMAGE_NT_HEADERS)Marshal.PtrToStructure(pinnedPacket.AddrOfPinnedObject(), typeof(IMAGE_NT_HEADERS));
                 pinnedPacket.Free();
                 #endregion
 
 
-
                 br.Close();
             }
 
@@ -61,6 +60,8 @@ namespace Sojaner.MemoryScanner
         {
             public UInt32 VirtualAddress;
             public UInt32 Size;
+            public bool HasAddress { get { return (VirtualAddress != 0); } }
+            public bool HasSize { get { return (Size > 0); } }
         }
         #endregion
         #region IMAGE_FILE_HEADER