OldSchoolHack

Register / Login English

KN4CK3R Tutorial 6 Pinball Trainer


icon KN4CK3R Tutorial 6 Pinball Trainer #1

Join Date: Sep 2009

Posts: 6

Hallo erstmal an das Forum und an KN4CK3R!


Ich lerne der Zeit etwas C++ und bin auf die Tut\'s von KN4CK3R gestossen, die sehr gut gemacht sind.
Nun hab ich ein Problem mit dem Trainer für MS Pinball, hatte die Tuts bis zum 6 Teil alle erfolgreich abgeschlossen, aber sobald es ums coden geht funktioniert es nicht, das habe ich bis jetzt fast mit allen codes in Online Tutorial\'s gehabt. Wenn ich Übungen aus Büchern z.B. wie C++ von A-Z oder Jetzt lerne ich C++ (Markt und Technik) heraus mache, geht es immer. Naja wie auch immer, ich Poste mal den Code, den ich fast 1zu1 übernommen habe, es sei gesagt ohne Copy and Paste.  Was ich jetzt schon weiß die Adressen sind falsch und müssen bei mir korrigiert werden das ist aber nicht das Problem, das Problem ist das Program findet die Anwendung nicht es steht nur \"MS Pinball Trainer coded by congo\" wenn ich nun Pinball starte kommt die Meldung \"Pinball wurde gefunden!\" einfach nicht. Ich schau und gucke aber ich weiß nicht woran es liegt. Hat jemand noch eine Idee? Jetzt wird der ein oder andere hier sagen, wieso macht er sich den die Mühe und will diesen Pinball Trainer zum laufen bekommen,  mir geht es ums Progen nicht um den Trainer an sich.

Bei den header Dateien musste ich hier jetzt \" nehmen in wirklichkeit steht da <   aber wenn ich das nutze werden die header Dateien im Forum nicht angezeigt.

TEXT Code:
  1. #include \"iostream.h\"
  2. #include \"windows.h\"
  3. #include \"conio.h\"
  4.  
  5. using namespace std;
  6.  
  7. int punkte;
  8.  
  9. int main()
  10.  
  11. {
  12. cout << \"MS Pinball Trainer\" << endl << \"coded by congo\" << endl;
  13. HWND fenster = NULL;
  14.  
  15. while(fenster == NULL);
  16.  
  17. {
  18. fenster = FindWindow(NULL, \"3D-Pinball für Windows – Space Cadet\");
  19. Sleep(200);
  20. }
  21.  
  22. cout << \"Pinball wurde gefunden!\" << endl;
  23.  
  24. DWORD processid;
  25. GetWindowThreadProcessId(fenster, &processid);
  26.  
  27. HANDLE handleprocess; handleprocess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, processid);
  28.  
  29. DWORD puffer = NULL;
  30. ReadProcessMemory(handleprocess,(void*)(0x0C23EDC),&punkte,sizeof(punkte),&puffer);
  31.  
  32. cout << \"aktueller Punktestand: \" << punkte << endl << \"neuer Punktestand: \";
  33. cin >> punkte;
  34.  
  35. WriteProcessMemory(handleprocess,(void*)(0x0C23EDC),&punkte,sizeof(punkte),&puffer);
  36. WriteProcessMemory(handleprocess,(void*)(0x0D9AEBA),&punkte,sizeof(punkte),&puffer);
  37.  
  38. CloseHandle(handleprocess);
  39.  
  40. return 0;
  41.  
  42. }


__________________

;-)
icon #2

Join Date: Aug 2007

Posts: 8643

User-Rating:

199 positive
33 negative
FindWindow kann nicht mit dem "ü" im Fensternamen umgehen. Such hier im Forum mal nach einem Post von mir, da hab ich gezeigt, wie man das Problem mit Spy++ umgehen kann.

greetz KN4CK3R

__________________

Hallo
icon #3

Join Date: Sep 2009

Posts: 6

Danke für die schnelle Antwort KN4CK3R und weißt du was das habe ich mir schon fast gedacht, aber da ich dachte das der Code bei Dir so gegangen sein müsste, hab ich die Idee verworfen.

Ich werd mich jetzt nochmal hier umschauen.

DANKE.

__________________

;-)
icon #4

Join Date: Aug 2008

Posts: 2594

User-Rating:

17 positive
5 negative
Quote
Original von KN4CK3R
FindWindow kann nicht mit dem "ü" im Fensternamen umgehen. Such hier im Forum mal nach einem Post von mir, da hab ich gezeigt, wie man das Problem mit Spy++ umgehen kann.

greetz KN4CK3R
Hab ich noch nie gesehn.
icon #5

Join Date: Sep 2009

Posts: 6

Und ich finde es auch nicht, habe nun die ganze Zeit geschaut.
Habe es jetzt auch mal so probiert->

{
fenster = FindWindow(NULL, "3D-Pinball f\x81r Windows – Space Cadet");
Sleep(200);
}

habe statt "für" eben "f\x81r" probiert und.............?

Nein, es hat nicht geklappt, wär ja auch zu einfach gewesen, hat hier jemand noch eine Idee?

@KN4CK3R wenn man mit Spy++ das Problem umgehen kann würdest du dir die Mühe machen mir das nochmal aufzuführen?

Danke & Gruß.

__________________

;-)
icon #6

Join Date: Sep 2009

Posts: 6

Also, das kann es auch nicht sein, denn wenn ich für Hearts schauen lasse ob das Fenster geöffnet wurde, macht er das auch nicht und hier ist kein Umlaut vorhanden.
Wenn ich Sleep(0) schreibe und Ausführe dann sucht er auch denn die CPU ist dann ausgelastet. Habe es auch nochmal mit anderen Windowsfenster Probiert ging auch nicht hier scheint was im Code falsch zu sein.

TEXT Code:
  1. //KN4CK3R\'s Tutorial 06 codet by congo
  2. #include \"iostream.h\"
  3. #include \"windows.h\"
  4. #include \"conio.h\"
  5.  
  6. using namespace std;
  7.  
  8. int punkte;
  9.  
  10. int main()
  11.  
  12. {
  13. cout << \"Hearts Trainer\" << endl << \"coded by congo\" << endl;
  14. HWND fenster = NULL;
  15.  
  16. while(fenster == NULL);
  17.  
  18. {
  19. fenster = FindWindow(NULL, \"Das Microsoft-Netzwerk mit Herz\");
  20. Sleep(100);
  21. }
  22.  
  23. cout << \"Hearts wurde gefunden!\" << endl;
  24.  
  25. DWORD prozessid;
  26. GetWindowThreadProcessId(fenster, &prozessid);
  27.  
  28. HANDLE handleprozess;
  29. handleprozess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, prozessid);
  30.  
  31. DWORD puffer = NULL;
  32. ReadProcessMemory(handleprozess,(void*)(0x0A53E54),&punkte,sizeof(punkte),&puffer);
  33.  
  34. cout << \"aktueller Punktestand: \" << punkte << endl << \"neuer Punktestand: \";
  35. cin >> punkte;
  36.  
  37. WriteProcessMemory(handleprozess,(void*)(0x0A53E54),&punkte,sizeof(punkte),&puffer);
  38. WriteProcessMemory(handleprozess,(void*)(0x0BCAEBA),&punkte,sizeof(punkte),&puffer);
  39.  
  40. CloseHandle(handleprozess);
  41.  
  42. return 0;
  43.  
  44. }


__________________

;-)
icon #7

Join Date: Aug 2007

Posts: 8643

User-Rating:

199 positive
33 negative
bitte Code Tags benutzen
TEXT Code:
  1. ...[/ code]
  2.  
  3. Edit: Code Tags in deine Posts gemacht und Forensuche benutzt:
  4. https://www.oldschoolhack.me/forum/showthread.php?id=63&eintrag=7
  5.  
  6. greetz KN4CK3R

__________________

Hallo
icon #8

Join Date: Sep 2009

Posts: 6

Hi KN4CKER,

mmh sry habe so meine Probleme mit dem Suchen in Foren ich habe nach KN4CK3R und FindWindow gesucht da war nur unter KN4CK3R was zu finden da habe ich mir mal alle Beiträge reingezogen und da war leider nichts. Ich glaub ich brauch noch ein Tut für Suchen in Foren ;-).

Ich Danke Dir für die Hilfe.

http://www.mosaiksynthpop.de/tr01.JPG

TEXT Code:
  1.  
  2.  
  3. // Pinballtrainer
  4. // KN4CK3R\'s Tutorial 06 codet by congo
  5.  
  6. #include <iostream.h>
  7. #include <windows.h>
  8.  
  9. using namespace std;
  10.  
  11. int punkte;
  12.  
  13. int main()
  14.  
  15.  
  16. {
  17. cout << \"MS Pinball Trainer\" << endl << \"coded by congo\" << endl;
  18.  
  19. HWND fenster = NULL;
  20.  
  21. while(fenster == NULL)
  22.  
  23. {
  24. fenster = FindWindow(\"1c7c22a0-9576-11ce-bf80-444553540000\",NULL);
  25. Sleep(200);
  26. }
  27.  
  28. cout << \"Pinball wurde gefunden!\" << endl;
  29.  
  30. DWORD prozessid;
  31. GetWindowThreadProcessId(fenster, &prozessid);
  32.  
  33. HANDLE handleprozess;
  34. handleprozess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, prozessid);
  35.  
  36. DWORD puffer = NULL;
  37. ReadProcessMemory(handleprozess,(void*)(0x0A53E54),&punkte,sizeof(punkte),&puffer);
  38.  
  39. cout << \"aktueller Punktestand: \" << punkte << endl << \"neuer Punktestand: \";
  40.  
  41. cin >> punkte;
  42.  
  43. WriteProcessMemory(handleprozess,(void*)(0x0A53E54),&punkte,sizeof(punkte),&puffer);
  44. WriteProcessMemory(handleprozess,(void*)(0x0BCAEBA),&punkte,sizeof(punkte),&puffer);
  45.  
  46. CloseHandle(handleprozess);
  47.  
  48. return 0;
  49. }
  50.  
  51.  

__________________

;-)
icon #9

Join Date: Aug 2007

Posts: 8643

User-Rating:

199 positive
33 negative
jut jut, wäre das auch geklärt

greetz KN4CK3R

__________________

Hallo