Verstehe das Problem nicht ganz. Wenn du die Originalbyte wiederherstellen möchtest, kopier sie halt vorher in ein eigenes Puffer, bevor du sie mit NOPs überschreibst. Dann kannst du jederzeit die Originaldaten aus deinem Puffer wieder an ihren korrekten Platz kopieren.
Ferner schlägt dein zweiter VirtualProtect-Aufruf in WriteToMemory zwingend fehl, weil du als letztes Argument NULL übergibst, s. .
Verstehe das Problem nicht ganz. Wenn du die Originalbyte wiederherstellen möchtest, kopier sie halt vorher in ein eigenes Puffer, bevor du sie mit NOPs überschreibst. Dann kannst du jederzeit die Originaldaten aus deinem Puffer wieder an ihren korrekten Platz kopieren.
Ferner schlägt dein zweiter VirtualProtect-Aufruf in WriteToMemory zwingend fehl, weil du als letztes Argument NULL übergibst, s. .
Viele Grüße
Dies habe ich versucht, leider gibt er mir immer 00 bytes, daher denke ich, ich mache etwas falsch.
Habe versucht es über die Writetomemory Funktion umzuschreiben.
void CopyToMemory(void* addressToStore, void const* valueToRead, int byteNum)
{
unsigned long OldProtection;
VirtualProtect((LPVOID)(addressToStore), byteNum, PAGE_EXECUTE_READWRITE, &OldProtection);
memcpy((LPVOID)addressToStore, valueToRead, byteNum);
VirtualProtect((LPVOID)(addressToStore), byteNum, OldProtection, &OldProtection);
}
bool TestMyFunc()
{
unsigned int dummy = 0x12345678;
unsigned int _i_need_to_be_dummy = 0;
CopyToMemory(&_i_need_to_be_dummy, &dummy, sizeof(dummy));
return _i_need_to_be_dummy == dummy;
}
if (!TestMyFunc())
{
// nope i did something wrong
}
Habe ich 1:1 so probiert, resultat von &dummy sowie &_i_need_to_be_dummy über cout
ergeben leider aber wieder nicht die richtigen bytes :/
sie ergeben die Addresse die sie in meiner DLL haben, gehe ich nun dahin um zugucken ob sie diese bytes dort übernommen haben, haben sie nur 2 bytes die auch nichts damit zutun haben.
Habe ich 1:1 so probiert, resultat von &dummy sowie &_i_need_to_be_dummy über cout
ergeben leider aber wieder nicht die richtigen bytes :/
Es macht auch keinen Sinn die beiden Adressen zu vergleichen.
Poste mal deinen kompletten Code, du machst wahrscheinlich nur irgendwo einen recht dummen Fehler.
Es macht auch keinen Sinn die beiden Adressen zu vergleichen.
Poste mal deinen kompletten Code, du machst wahrscheinlich nur irgendwo einen recht dummen Fehler.
WTS LV110 WARLOCK/CLI Satrun 08/30/2010 - Silkroad Online Trading - 5 Replies WTS LV110 WARLOCK/CLI Satrun
for more information pm me or post ur email
only gold or chars on server helios
or psc
or cash via westren union
email verifed but i will give all email infos
2 Bytes oder 4 Bytes ? 02/13/2010 - Kal Online - 3 Replies Erm wenn ich nach cooldowns schaue für Mockery mit der UCE
such ich dann mit 2 Bytes oder 4 Bytes ??
CLI.exe 07/21/2006 - Technical Support - 2 Replies Kann mir jemand sagen was das viellt ist? Adaware?