rhch,
public class d3
{
// public methods
public ? ReadBytes( int *, int )
{
return ;
}
public uint ReadUInt( uint )
{
return ;
}
public int ReadInt( uint )
{
return ;
}
public string ReadASCIIString( int * , int )
{
return ;
}
// private variables
private ...
private ...
private ...
private ...
private ...
private ...
}
There is his d3 class, I don't know what his implementation is doing though. I would have to see more of his code. But this is why classes exist. To hide information. :P ...
The more I sit here and think about it though, he should of posted the D3 class. At least with those functions. So, we all could get a chance to see what he is doing.
Sometimes, though I think people think we are suppose to be mind readers. I know some of you out there have done what he is doing. But the fact is most of the people reading these forums haven't. That is why there is a lack of information.
Its just like when you were in college. You need to post your code so anyone that wants to look at it can follow it and read all of it.
But this is where people don't want to share. What one thinks is important is really unimportant. But it also works the other way too.
Its up to him if he posts more information. We would all like to see what he is doing.
Inside each Read function there using Kernel32.dll ReadProcessMemory .. Which is Ordinal 3C8 inside the .dll
Or easier way google ReadProcessMemory hahahaha... Little funny there. :P
Here is an example,
Code:
/// <summary>
/// reads an int32 from memory
/// </summary>
/// <param name="handle">the handle to read from</param>
/// <param name="adress">the adress to read at</param>
/// <param name="silent">true if you dont want log messages</param>
/// <returns></returns>
public static Int32 ReadInt32(IntPtr handle, IntPtr adress, bool silent)
{
byte[] byteBuffer = new byte[4];
Int32 value = 0;
int bytesRead;
bool success = wowmem.Kernel32.ReadProcessMemory(handle, adress, byteBuffer, 4, out bytesRead);
if (success)
{
value = BitConverter.ToInt32(byteBuffer, 0);
if (!silent)
Program.Log("ReadProcessMemory: SUCCESS Int32 Read " + bytesRead + " bytes from address " + adress + " in handle " + handle + ". Value: " + value);
}
else if (!silent && !success)
Program.Log("ReadProcessMemory:: FAILURE Int32 Read " + bytesRead + " bytes from address " + adress + " in handle " + handle);
return value;
}
REF: http://read.pudn.com/downloads159/sourcecode/game/717015/pinvoke/Kernel32.cs__.htm
I don't know why he thinks the ReadProcessMemory functions are so special to not be included. But whatever.
-Bit_Hacker