POINERRRR
-
iHofel schrieb:
LEUTE ich will nur die var in meinen kleinen CMD Programm ändern nicht auf dem betriebsystem -.-
Nein, du willst die eingegebene Adresse ändern und die liegt nunmal höchstwahrscheinlich NICHT innerhalb des Adressraums deines Programms.
Es ist schön, dass du weißt, was ein Zeiger in C++ ist, es fehlt dir aber schlichtweg das nötige Computer-Wissen dazu. Das kannst du dir erstmal sogar via Wikipedia beibringen.
Es hat keinen Sinn dir hier irgendeinen Copy&Paste-Code zu liefern. Wenn du diesen willst downloade ein OpenSource-Cheat-Programm und sieh dort nach.
int addr = 0; cin >> addr; int* ptr = static_cast<int*>(addr); *ptr = 5; // most probably crashWarum crash? Weil du eben doch außerhalb deines eigenen Programmes auf Speicher zugreifst, das Betriebssystem verhindert das. Glaub's mir. Das hat nichts mit "auf dem betriebssystem" zu tun.
MfG SideWinder
-
Dafuer ist uebrigens ein reinterpret_cast erforderlich, ausserdem empfiehlt sich die benutzung von uintptr_t. :p
-
SideWinder schrieb:
iHofel schrieb:
LEUTE ich will nur die var in meinen kleinen CMD Programm ändern nicht auf dem betriebsystem -.-
Nein, du willst die eingegebene Adresse ändern und die liegt nunmal höchstwahrscheinlich NICHT innerhalb des Adressraums deines Programms.
Es ist schön, dass du weißt, was ein Zeiger in C++ ist, es fehlt dir aber schlichtweg das nötige Computer-Wissen dazu. Das kannst du dir erstmal sogar via Wikipedia beibringen.
Es hat keinen Sinn dir hier irgendeinen Copy&Paste-Code zu liefern. Wenn du diesen willst downloade ein OpenSource-Cheat-Programm und sieh dort nach.
int addr = 0; cin >> addr; int* ptr = static_cast<int*>(addr); *ptr = 5; // most probably crashWarum crash? Weil du eben doch außerhalb deines eigenen Programmes auf Speicher zugreifst, das Betriebssystem verhindert das. Glaub's mir. Das hat nichts mit "auf dem betriebssystem" zu tun.
MfG SideWinder
ok ich habs jetzt kapiert ich brauch bessere kenntise also kann man einach nicht auf die addresse zugreifen ok
und was muss ich jetzt lernen damit ih kapier wie man die sperre vom betriebsystem umgeht ?

-
Kellerautomat schrieb:
Dafuer ist uebrigens ein reinterpret_cast erforderlich, ausserdem empfiehlt sich die benutzung von uintptr_t. :p
also muss ich ne headerdatei eingeben um cast zuverwenden ? :0 ?
-
@Kellerautomat: Danke, von uintptr_t hatte ich noch nichts gehört

@iHofel: Unter Windows:
Allgemeines Verständnis bzgl. physikalischem und virtuellem Speicher
Paging
Verstehen des Memory Managements unter Windows
dazugehörige API (also allokieren von Speicher mit WinAPI-Funktionen statt mit new/delete)
Prozesse und Prozessrechte unter Windows
WriteProcessMemory()MfG SideWinder
-
SideWinder schrieb:
@iHofel: Unter Windows:
Allgemeines Verständnis bzgl. physikalischem und virtuellem Speicher
Paging
Verstehen des Memory Managements unter Windows
dazugehörige API (also allokieren von Speicher mit WinAPI-Funktionen statt mit new/delete)
Prozesse und Prozessrechte unter Windows
WriteProcessMemory()MfG SideWinder
und kannst du mir zeigen wie ich WriteProcessMemory() verwenden kann oder was ich in den parameter schreiben muss oder dergleichen n skript zum zeigen währ nicht schlecht falls du dir die zeit nimmst

-
C++ ist keine Scriptsprache.
-
Kellerautomat schrieb:
C++ ist keine Scriptsprache.
coden ?
-
Bevor du WriteProcessMemory() verwenden sollst, solltest du dir die 5 Punkte darüber ansehen und verstehen. Copy & Paste von http://noz3001.wordpress.com/2009/10/07/writeprocessmemory-examples/ wird zwar funktionieren, wird dich aber nicht zu einem erfahreneren Programmierer erheben.
MfG SideWinder
-
Danke links sind immer gut
