Hi,
i'm using this function:
Code:
// ReadMultilevelPointer
int CMemory::ReadMultilevelPointer(unsigned int Module, unsigned int Pointer1, unsigned int Pointer2, unsigned int Pointer3, unsigned int Pointer4)
{
UINT_PTR uiptrFinal = DeRef( DeRef( DeRef( Module + Pointer1 ) + Pointer2 ) + Pointer3) + Pointer4;
int Value;
::ReadProcessMemory(PROC_HANDLE, reinterpret_cast<LPVOID>(uiptrFinal), &Value, sizeof(int), NULL);
return Value;
}
Code:
// ReadMultilevelPointer DeRef Function
UINT_PTR CMemory::DeRef( UINT_PTR _uiptrPointer ) {
UINT_PTR uiptrRet;
if ( !::ReadProcessMemory( PROC_HANDLE, reinterpret_cast<LPVOID>(_uiptrPointer), &uiptrRet, sizeof( uiptrRet ), NULL ) ) { return 0UL; }
return uiptrRet;
}
To Read values from a multilevel pointer.
Now i'd like to change the value i've read, so i made a new function to write this:
Code:
// WriteMultilevelPointer
bool CMemory::WriteMultilevelPointer(unsigned int Module, unsigned int Pointer1, unsigned int Pointer2, unsigned int Pointer3, unsigned int Pointer4, LPCVOID Value)
{
UINT_PTR uiptrFinal = DeRef( DeRef( DeRef( Module + Pointer1 ) + Pointer2 ) + Pointer3) + Pointer4;
if(::WriteProcessMemory(PROC_HANDLE, reinterpret_cast<LPVOID>(uiptrFinal), Value, sizeof(Value), NULL))
return true;
else
return false;
}
so Here is my Problem:
the variable "Value" must be a LPCVOID.. but how do i convert my int to LPCVOID?
like:
Code:
Value = ReadMultilevelPointer(.........)+50
any idea how to convert from int to LPCVOID?