Quote:
Originally Posted by Shadow992
Ich habe ein kleine Problem am besten ich Liste mal auf was ich habe und was nicht ;-)
Ich habe:
das browsergame von dem Ich die Addressen beziehen will
die Addressen (als text ) ausgelesen und gespeichert , habe sie in
einem Autoit Projekt eingebaut und anzeigen lassen ......
und zu meinem erstaunen .......
Autoit zeigt nicht den selben Wert als Text an , wie er eigentlich haben müsste ........
Er zeigt es auch nicht in ascII chars an (habe ich schon überprüft) , kann man addressen in denen Texte gespeichert sind überhaupt so anzeigen lassen wie es auch in cheat engine angezeigt wird ?
Mein fall :
Wert der Addresse :eigentlich 109
Angezeigt wird aber :3145777
Und noch eine Frage wie kann man Pointer statt addressen in ein AutoIT skript verwenden ?
das mit den addressen hab ich schon raus aber was muss statt der Addresse hin wenn z.b. soetwas da steht (cheatengine):
P->003D008E
|
also wenn das 109, das du auslesen willst ein text ist, dann kann es gut möglich sein, dass autoit was anderes ausspuckt
wenn du die NomadMemory verwendest, musst du einfach bei $sv_type reinschreiben "[char 100]", dann liest autoit einen string aus der adresse aus mit der länge 100 (soweit ich weiß)
also in dem fall
_MemoryRead (_MemoryOpen ("prozessname"), 003D008E, "[char 100]")
das müsste dann 109 ausspucken
zu der frage mit den pointern:
du solltest mal genau nachschauen, was ein pointer ist
wenn du einen pointer in ce hinzufügst, dann musst du zuerst die adresse vom pointer reinschreiben, dann das offset (falls vorhanden)
der wert vom pointer ist dann die adresse, auf die gepointet wird
also in dem fall hat z.b. der pointer 0x(die adresse vom pointer halt) den wert 003D008E und deshalb pointet dieser pointer nach 003D008E
sähe dann in autoit so aus:
$pointer = "dein pointer"
$offset = "offset, falls vorhanden (achtung: in hex-schreibweise)"
$adresse = _MemoryRead ($mem, $pointer) + $offset
$adresse würde in dem fall dann die adresse sein, die du am ende auslesen musst (wieder mit _MemoryRead)