MessageBox verändern
-
Hallo wenn ich mir so eine einfach MessageBox mache:
MessageBox(0,"hallo","123",0);
Dann kann ich ja z.b. mit dem OllyDebugger an die ensprechenden Offset Adressen gehen und den Text der Message Box verändern.
Aber kann man mit C++ oder so auch irgendwie ein Programm machen welches z.b. die Werte an den ensprechenden Offset adressen ändert ?
-
msg22 schrieb:
Hallo wenn ich mir so eine einfach MessageBox mache:
MessageBox(0,"hallo","123",0);
Dann kann ich ja z.b. mit dem OllyDebugger an die ensprechenden Offset Adressen gehen und den Text der Message Box verändern.
Aber kann man mit C++ oder so auch irgendwie ein Programm machen welches z.b. die Werte an den ensprechenden Offset adressen ändert ?
Du kannst natürlich den String der angezeigt wird an der Stelle bestimmen, wo du ihn ausgibst. Falls du aber meinst, dass du ein Programm schreiben willst das ein anderes Programm entsprechend verändert, ist das nicht so ohne weiteres möglich. Das Betriebssystem verhindert weitgehend, dass Programme sich gegenseitig in den Interna rumpfuschen.
-
Worauf willst du hinaus? Du kannst doch die Strings deiner Wahl übergeben, wo ist das Problem? Falls du meinst, dass du Variablen mit ausgeben willst: setze einfach vorher einen String zusammen und übergib ihn an die MessageBox.Btw, das gehört nicht hierhin, sondern ins WinAPI-Forum.
-
_matze schrieb:
Btw, das gehört nicht hierhin, sondern ins WinAPI-Forum.
Jein. Die MessageBox schon, die grundsätzliche Frage "kann ich mit C++ bei nem anderen programm im Speicher rumpfuschen" nicht

-
pumuckl schrieb:
_matze schrieb:
Btw, das gehört nicht hierhin, sondern ins WinAPI-Forum.
Jein. Die MessageBox schon, die grundsätzliche Frage "kann ich mit C++ bei nem anderen programm im Speicher rumpfuschen" nicht

Wann wird es endlich die Möglichkeit geben, einen Thread mehreren Boards zuzuordnen? Längst überfällig, wie du siehst...

-
jein wird jaing eschreiben also rechtschriebung is falsch

-
jein wird jaing eschreiben also rechtschriebung is falsch

Nö, setzen, sechs! Jein kannst du im Duden finden, jain nicht.
Ich komme außerdem noch auf 5 falsch geschriebene Wörter, auf einen Grammatikfehler und zwei Interpunktionsfehler (wer bietet mehr?). Wer sich schon über die Rechtschreibung anderer beklagt, sollte wenigstens darauf achten, dass er selbst korrekt schreibt.Zum eigentlichen Thema noch: Ich habe mal spaßeshalber dafür gesorgt, dass ReadProcessMemory() in anderen Prozessen nicht mehr funktioniert hat. Nach kurzer Zeit hatte ich bei Windows XP dann einen Bluescreen.

-
pumuckl schrieb:
Jein. Die MessageBox schon, die grundsätzliche Frage "kann ich mit C++ bei nem anderen programm im Speicher rumpfuschen" nicht

Ich denke doch. Oder wo steht im Standard etwast über ein anderes Programm? Solche Fragen sind plattformabhängig und im Rahmen von c++ alleine nicht zu beantworten.
-
Old McDonald schrieb:
Zum eigentlichen Thema noch: Ich habe mal spaßeshalber dafür gesorgt, dass ReadProcessMemory() in anderen Prozessen nicht mehr funktioniert hat. Nach kurzer Zeit hatte ich bei Windows XP dann einen Bluescreen.

Ja und? Wundert dich das? Ich hab mal ntoskrnl.exe spaßeshalber durch doom3.exe ersetzt und dann funzte Windows nicht mehr.
-
Ja und? Wundert dich das? Ich hab mal ntoskrnl.exe spaßeshalber durch doom3.exe ersetzt und dann funzte Windows nicht mehr.
Nö, gewundert hat's mich nicht (ich glaube, ich hatte da einfach einen Interrupt reingeschrieben).
Aber meine Methode hatte den Vorteil, dass Windows nach dem Neustarten eben wieder lief.