[Tutorial] 4StoryEG Adressen Suchen und in Auto it Scripten

07/27/2012 16:23 Sukox#1
#closed
#Download removed
07/27/2012 18:50 *Dr.Bob*#2
wenn du schon was erklären willst dann solltest vl auch was zu den einzelnen befehlen was schreiben und nicht nur fertiges zeugs hinschreiben..... daher kann man dein tut vergessen...
07/27/2012 20:12 Logtetsch#3
Im großen und ganzen ist es ganz nett anzusehen, jedoch bringt dein Tutorial mehr Verwirrung als Klarheit. Du erklärst wie man die Adressen sucht, aber das bringt nicht viel, zumal du beim Coden dann direkt auf Pointer übersteigst. Niemand wird verstehen wie du die Pointer gefunden hast bzw. wie man diese dann einsetzt.

Die Offsets würde ich persönlich mit Constanten deklarieren, weil wir diese ja nicht verändert haben wollen.

PHP Code:
Const $offset_Beispiel_1[3] = [123
Kommen wir nun zur ProcessId. In deinem Script überprüfst du, ob die PId gleich 1 ist. Das kann man so nicht machen. Du solltest lieber überprüfen, ob die PId größer als 0 ist.

PHP Code:
$ProcessId ProcessExists ("TClient.exe")
if 
$ProcessId 0 then

$Handle 
_MemoryOpen($ProcessId)
if 
isArray ($Handlethen

//Hier der ganze Code vom Hack

endif

endif 
Nunja. Wer auf Copy&Paste steht, dem solls recht sein.
Ich habe [Only registered and activated users can see links. Click Here To Register...] vor kurzer Zeit ein Tutorial gemacht. In diesem habe ich auch noch etwas Bezug auf die Parameter der einzelnen Funktionen genommen.
Achja. Bevor hier wieder irgendwelche Leute rumjammern, dass ich die Parameter nicht richtig erkläre, sage ich schon mal hier, dass mein Tutorial sehr einfach gehalten ist.
07/27/2012 20:57 KDeluxe#4
Herzlichen Glückwunsch, du hast [Only registered and activated users can see links. Click Here To Register...] kopiert. Davon, dass ich dir geholfen habe, kann nicht die Rede sein.

Allerdings wolltest du ja unbedingt etwas verschlimmbessern, weshalb es am Ende wieder nicht funktioniert:
Code:
If $dwProcessId = 1 Then
Das funktioniert nicht. Funktionieren würde es allerdings dann wieder, wenn man die "1" mit "True" ersetzt, denn "True" nimmt alle Werte außer 0 an.
"=" ist eigentlich ein Zuweisungsoperator, zum vergleichen benutzt man eigentlich "==". Bei AutoIt gibt es zwischen beiden Operatoren aber keinen großen Unterschied. Bei Vergleichen von Strings ist "==" beispielsweise Case sensitive, "=" nicht.
07/27/2012 21:12 Logtetsch#5
Ein kleiner Tipp an dich, schau dir mal die AutoIT [Only registered and activated users can see links. Click Here To Register...]an.
Vielleicht wird dir hiermit einiges klar.

[Only registered and activated users can see links. Click Here To Register...]nochmal die deutsche Version.
07/27/2012 22:01 *Dr.Bob*#6
warum nicht gleich so:


Dim $O_Shop[3] = [0, 0x318, 0x128]
Global $Open_Process = _MemoryOpen(ProcessExists("TClient.exe"))

_MemoryPointerWrite($Baste, $Open_Process, $O_Shop, 1)

ist wohl zu einfach.....
07/27/2012 23:55 Logtetsch#7
Ich würd sowas als reine Angewohnheitssache sehen.
Aber jedem das seine ;)
07/28/2012 00:50 KDeluxe#8
Quote:
Originally Posted by *Dr.Bob* View Post
warum nicht gleich so:


Dim $O_Shop[3] = [0, 0x318, 0x128]
Global $Open_Process = _MemoryOpen(ProcessExists("TClient.exe"))

_MemoryPointerWrite($Baste, $Open_Process, $O_Shop, 1)

ist wohl zu einfach.....
Weil das schlecht ist, ganz einfach.

Das Beispielscript von mir ist aber auch nicht unbedingt gut, da gibt es bessere Möglichkeiten.
08/04/2012 19:36 Benjihz#9
Also das man ein TuT schreibt, ohne ein einziges Thanks zu bekommen is ja echt ne Sache ^^
Aber is wohl zusammenkopiert & meiner Meinung nach nich wirklich erklärt, sondern einfach hingeschrieben.
08/04/2012 21:00 Logtetsch#10
Es bringt dir nichts, wenn du da einfach "#closed" hinklatschst!

#closerequest