OldSchoolHack

Register / Login English

Win32 konsolen anwendung und windows forms anwendung


icon Win32 konsolen anwendung und windows forms anwendung #1

Join Date: Sep 2009

Posts: 62

Guten Tag
viele cheats die man überall downloaden kann wie zb. OSH CSS kommen mit einer ansehnlichen GUI
Ein fenster! eine windows forms anwendung!
Einige jedoch kommen in einem konsolen fenster wie zb. die leis cheats oder Iniuria!
wie kann ich zb. diesen flashhack ( quelle OSHTutorial7)

TEXT Code:
  1.  
  2. // CS:Source Flash/Smoke-Hack
  3. // © 2007 KN4CK3R
  4.  
  5. #include <iostream.h>
  6. #include <windows.h>
  7. using namespace std;
  8.  
  9. BYTE flash[5] = { 0xE9, 0x5E, 0x04, 0x00, 0x00 };
  10. BYTE smoke[5] = { 0xE9, 0x04, 0x01, 0x00, 0x00 };
  11.  
  12. int main()
  13. {
  14. cout << "Counterstrike:Source Trainer" << endl << "coded by KN4CK3R" << endl;
  15.  
  16. HWND fenster = NULL;
  17. while(fenster == NULL)
  18. {
  19. fenster = FindWindow(NULL, "Counter-Strike Source");
  20. Sleep(100);
  21. }
  22. cout << " Counterstrike:Source wurde gefunden!" << endl;
  23.  
  24. DWORD prozessid;
  25. GetWindowThreadProcessId(fenster, &prozessid);
  26.  
  27. HANDLE handleprozess;
  28. handleprozess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, prozessid);
  29.  
  30. DWORD puffer = NULL;
  31. WriteProcessMemory(handleprozess,(void*)(0x241D0D6D),&flash,sizeof(flash),&puffer);
  32. WriteProcessMemory(handleprozess,(void*)(0x2418D40A),&smoke,sizeof(smoke),&puffer);
  33.  
  34. CloseHandle(handleprozess);
  35.  
  36. return 0;
  37. }
  38.  

von einer win32 konoslen anwendung in eine forms anwendung "konvertieren"
ich bin relativ schlecht in VC++ FormsAnwendung weil ich finde dass das nichts mit programmieren zu tun hat
TEXT Code:
  1.  
  2. Label1->Text = "Hallo";
  3.  
zu schreiben! dennoch würde ich gerne wissen wie sowas funktionert!

icon #2

Join Date: Aug 2008

Posts: 2594

User-Rating:

17 positive
5 negative
Also in VC++  hatte ich Probleme so eine anwengung zu schreiben. .net geht mit standart window lib irgendwie nicht.
KN4CK3R hat mir C++ Builder mefpohlen. Und mit dem geht es. Aber was gui programmieren angehn musst du tutorials gucken. Ich kann dir gerade nichts emfehlen, da ich keine benutzt hab.
icon #3

Join Date: Sep 2009

Posts: 96

1.) Forms Application erstellen
2.) Intelligence aus Knackers main-Methode extrahieren
3.) als neue Methode in die Forms-Anwendung klatschen und iwi aufrufen lassen

__________________

Only registered and activated users can see links.
SimpleCSSHack, SimpleL4DHack, SimpleTF2Hack - still UD
icon #4

Join Date: Sep 2009

Posts: 62

sorry aber ... methode? meinst du funktion?
intelligence? was meinst du damit genau .... ich kenn die ganzen begriffen och net wirklich
ich weiß was ein array, zeiger,funktion,structur,constante,variable is und so ;- )

C++ Builder ist von Boreland und nicht kostenlos :- /
icon #5

Join Date: Aug 2008

Posts: 2594

User-Rating:

17 positive
5 negative
Quote
Original von PDX
C++ Builder ist von Boreland und nicht kostenlos :- /
Für alle gute Programme muss man benzahlen.
Abgesehn davon wer benutzt schon VC++ express, wenn schon, dann Visual Studio, was auch geld kostet.

Quote
Original von Stormy
1.) Forms Application erstellen
2.) Intelligence aus Knackers main-Methode extrahieren
3.) als neue Methode in die Forms-Anwendung klatschen und iwi aufrufen lassen
1. Ist ja klar, erstellst form, machst du dacheckbox usw rein.
2+3. Weiß bet was er mit "Intelligence" meint, wahrscheinlich sollst du intelligent die Sachen die das ganze memorywriting machen rauskopieren.
   Also z.B. macht du eine globale definierung vom "HWND fenster = NULL;" und sorgst dafür das FindWindow ganze Zeit käuft bis er die hwnd vom fenster hat damit du draus process adresse findest und process handle öfnest, damit man danach rein schreiben kann.
Dann gehst du bei deine checkbox auf ereignise/events (ka auf welche Sprache es bei dir steht). Und gibst OnClick/Click einen event name, bestätigst mit Enter. Draufhin kommt die event code wo du rein schreiben kannst was passiert. Bei Checkbox z.B. machst du if(chechboxName->Checked) {WriteProcess...} else{...}
icon #6

Join Date: Sep 2009

Posts: 62

danke igromanru
allerdings findet mein werter compiler HWND nicht ... ich denke weil ich windows.h nicht includiert habe was bei forms andwendungen ja auch garnicht geht o.O

icon #7

Join Date: Sep 2009

Posts: 62

Only registered and activated users can see links.
hier ein multi schreenshot von den werten die ich VC++2005( ich weiß veraltet aber VC++2008 buggt nur bei mir rum!)
und der buildlog ^^
TEXT Code:
  1.  
  2. Kompilieren...
  3. kkkk.cpp
  4. c:userspdxdocumentsvisual studio 2005projectskkkkkkkkForm1.h(14) : error C2146: Syntaxfehler: Fehlendes \';\' vor Bezeichner \'flash\'
  5. c:userspdxdocumentsvisual studio 2005projectskkkkkkkkForm1.h(14) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: \"default-int\" wird von C++ nicht unterstützt.
  6. c:userspdxdocumentsvisual studio 2005projectskkkkkkkkForm1.h(14) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: \"default-int\" wird von C++ nicht unterstützt.
  7. c:userspdxdocumentsvisual studio 2005projectskkkkkkkkForm1.h(15) : error C2146: Syntaxfehler: Fehlendes \';\' vor Bezeichner \'smoke\'
  8. c:userspdxdocumentsvisual studio 2005projectskkkkkkkkForm1.h(15) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: \"default-int\" wird von C++ nicht unterstützt.
  9. c:userspdxdocumentsvisual studio 2005projectskkkkkkkkForm1.h(15) : error C2086: \'int kkkk::BYTE\': Neudefinition
  10. c:userspdxdocumentsvisual studio 2005projectskkkkkkkkForm1.h(14): Siehe Deklaration von \'kkkk::BYTE\'
  11. c:userspdxdocumentsvisual studio 2005projectskkkkkkkkForm1.h(15) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: \"default-int\" wird von C++ nicht unterstützt.
  12. c:userspdxdocumentsvisual studio 2005projectskkkkkkkkForm1.h(115) : error C2065: \'handleprozess\': nichtdeklarierter Bezeichner
  13. c:userspdxdocumentsvisual studio 2005projectskkkkkkkkForm1.h(115) : error C2065: \'puffer\': nichtdeklarierter Bezeichner
  14. c:userspdxdocumentsvisual studio 2005projectskkkkkkkkForm1.h(115) : error C3861: \"WriteProcessMemory\": Bezeichner wurde nicht gefunden.
  15. c:userspdxdocumentsvisual studio 2005projectskkkkkkkkForm1.h(116) : error C3861: \"WriteProcessMemory\": Bezeichner wurde nicht gefunden.
  16.  

ich weiß es ist ein wenig viel verlangt wenn ich hier jeden schritt erklärt haben möchte, aber ich kann einfach besser lernen wenn ich mir das rauspicke was ihc grad brauch als wenn ich
nach einem lehrbuch lerne. ich kann die basics in c++ (<<<-- infomaterial!)

ich hab das #define HWND nochmal weg gemacht ... geht allerdings immernoch net
icon #8

Join Date: Aug 2008

Posts: 2594

User-Rating:

17 positive
5 negative
also #define HWND ist auf jeden fall falsch. Globale definierung geht so:
Übel alles funktionen machst du HWND name = NULL; rein. Also da wo bei dir #define HWND steht ersetzt du einfach durch HWND name = NULL; BYTE Sachen genau da drunter, damit sie auch global sind. Bei else kommt auch {} hinterdran. Und windows.h muss man natülich auch includen. Da du aber in VC++ macht, wird aus deinen programm glaub ich nichts. Auser jemand eine lösung dafür hat. Dann ist noch ganz wichtig, wo ist die FindWindow schleife?

Hast du überhaupt irgendwelchen tutorial durch? Oder alle grundlagen in einen Buch? Weil Only registered and activated users can see links. z.B. sind die wichtigsten Grundlagen. Und da wird Only registered and activated users can see links. ganz genau beschrieben.
icon #9

Join Date: Sep 2009

Posts: 62

ja habe ich ! ich dachte solange man nur eine anweisung in if oder else hat, muss man keinen block machen!
thx für den linik

wo muss ich die findwindow schleife den neinbauen? in form1? warum wird nichts aus dem prog wenn ich mit vc++ arbeite? das ist doch ein ganz normaler compiler
icon #10

Join Date: Aug 2008

Posts: 2594

User-Rating:

17 positive
5 negative
Ich hab doch gesagt, das .net mir stadart lib nicht kompartiebel ist. Und windows forms ist .net. Ich weiß nicht ob es dafür eine Lösung gibt auser anderen compiler. Mir wurde gesagt das es net geht, und bei mir ging es auch nicht. Da kommt immer fehlermeldung.
Und als windowsschleife kann man timer nehmen. Das wird das selbe sein. Machst einfach 100ms als interval und als OnTime event, machst du FindWindow.
icon #11

Join Date: Sep 2009

Posts: 62

okay...
gibt es noch andere compiler als c++builder und netbeans etc. ?
ich hatte eine zeit lang bloodsheds devc++ allerdings will ich ja forms anwendungen schreiben!

icon #12

Join Date: Aug 2008

Posts: 2594

User-Rating:

17 positive
5 negative
Du kannst für GUI noch QT, wxWidgets. Such mal im inet halt. Ich habe mich damit nie so richtig geschäftigt. Es gibt noch einen wxdev-c++ aber dev-c++ ist eigentlich veraltert und wird nicht mehr verbessert.
icon #13

Join Date: Sep 2009

Posts: 62

Welchen compiler benutzt du ?
icon #14

Join Date: Aug 2008

Posts: 2594

User-Rating:

17 positive
5 negative
Ich benutze RAD Studio 2010, also C++ Builder 2010. Ich habe es nicht gekauft.
icon #15

Join Date: Sep 2009

Posts: 62

check deine pms
icon #16

Join Date: Aug 2008

Posts: 2594

User-Rating:

17 positive
5 negative
Hab dir zurück geschrieben.

Auf jeden fall. Kannst du die trial version download.

icon #17

Join Date: Sep 2009

Posts: 62

Inzwischen habe ich kein problem mehr mit dem großen und ganzen der "konverrtierung"
es lag einfach an meinem compiler das ich nichts zustande bringen konnte!

allerdings habe ich ein paar probleme mit der findwindow schleife, die ich als timer unterbringen wollte!

TEXT Code:
  1. void __fastcall TForm1::Timer1Timer(TObject *Sender)
  2. {
  3. Timer1->OnTimer; // ?!? Und jetzt? Timer1->OnTimer->FindWindow("TEST", NULL); <--- Fail
  4. // Timer1->OnTimer = FindWindow("TEST",NULL"); <--- Fail
  5.  
  6. }
  7.  
icon #18

Join Date: Aug 2008

Posts: 2594

User-Rating:

17 positive
5 negative
Kein wunder, die ganze Funtion ist schon OnTimer.
Wenn du bei event Name eigibst, dann wird die funktion mit diesen namen erstellt. Das bedeutet das du nur FindWindow reinschreiben muss, weil es schon auch so OnTime ausgeführt wird.
TEXT Code:
  1.  
  2. void __fastcall TForm1::Timer1Timer(TObject *Sender)
  3. {
  4. if(fenster == NULL)
  5. {
  6. fenster = FindWindow(NULL, "Counter-Strike Source");
  7. GetWindowThreadProcessId(fenster, &prozessid);
  8.  
  9.  
  10. handleprozess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, prozessid);
  11. }
  12. }
icon #19

Join Date: Sep 2009

Posts: 62

aaaaaaaaaaaaaaachhhhhsooooooooooooooooooooooo
thx
icon #20

Join Date: Aug 2008

Posts: 2594

User-Rating:

17 positive
5 negative
Übrigens. Bei checkbox ist das selbe. Aber du braucht da if damit was bestimmt nur passiert wenn es checked ist, sonst wird es bei jeden klich auf checkbox ausgeführt.