|
You last visited: Today at 03:38
Advertisement
CE-pointer in autoit
Discussion on CE-pointer in autoit within the AutoIt forum part of the Coders Den category.
11/14/2010, 09:49
|
#1
|
elite*gold: 0
Join Date: Jul 2010
Posts: 450
Received Thanks: 78
|
CE-pointer in autoit
hi, ich hätte da mal ne Frage:
ich habe in Cheat engine einen Pointer gefunden den ich mit Autoit ändern will.
ich hab die SuFu benutz aber da steht nur was von Pointern die ne eigene Adresse haben kA aber ich habe so einen Pointer:
P>[Adresse]
und den pointer möchte ich in autoit verändern.
|
|
|
11/14/2010, 10:14
|
#2
|
elite*gold: 0
Join Date: Jan 2010
Posts: 1,385
Received Thanks: 1,006
|
PHP Code:
Dim $AOffset[3] = [0, 0x4E0, 0x5BA]
SetPrivilege("SeDebugPrivilege", 1)
$openmem = _MemoryOpen(WinGetProcess("METIN2"))
$baseadress = _MemoryModuleGetBaseAddress(WinGetProcess("METIN2"), "immortal2.bin")
Dim $zustand
Case $Button1
$zustand = True
Case $Button2
$zustand = False
If $zustand Then
$Awert =_MemoryPointerRead($baseadress+0x21C4A4, $openmem, $AOffset, "short")
_MemoryPointerWrite($baseadress + 0x21C4A4, $openmem, $AOffset, "16656", "dword")
Else
$Awert =_MemoryPointerRead($baseadress+0x21C4A4, $openmem, $AOffset, "short")
_MemoryPointerWrite($baseadress + 0x21C4A4, $openmem, $AOffset, "16256", "dword")
Du declarierst erst die Variable $Zustand,
wenn man button 1 drückt wird $zustand aktiviert, und somit in dne pointer reingeschrieben (if $zustand then .....)
wenn man button 2 drückt wird der zustand deaktiviert , also es wird nicht mehr reingeschrieben und der pointer kann sich auf die ursprüngliche addresse zurück setzen (else ....)
|
|
|
11/14/2010, 11:09
|
#3
|
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
|
Quote:
Originally Posted by eagly200
ich hab die SuFu benutz aber da steht nur was von Pointern die ne eigene Adresse haben kA aber ich habe so einen Pointer:
P>[Adresse]
und den pointer möchte ich in autoit verändern.
|
um den pointer zu ändern einfach per WriteProcessMemory ne andere adresse reinschreiben...
wobei das wohl in 95% aller fälle einen crash verursachen wird.
|
|
|
11/14/2010, 11:52
|
#4
|
elite*gold: 0
Join Date: Jul 2010
Posts: 450
Received Thanks: 78
|
das bringt dann aber nicht viel...
|
|
|
11/14/2010, 12:06
|
#5
|
elite*gold: 0
Join Date: Jan 2010
Posts: 1,385
Received Thanks: 1,006
|
machs so wie ich
|
|
|
11/14/2010, 12:33
|
#6
|
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
|
Quote:
Originally Posted by eagly200
das bringt dann aber nicht viel...
|
hä?
du willst den pointer umleiten, also musst einfach in den pointer was reinschreiben -.-
Code:
memwrite($pointer, $new_adress)
|
|
|
11/14/2010, 12:55
|
#7
|
elite*gold: 0
Join Date: Jul 2010
Posts: 450
Received Thanks: 78
|
Quote:
Originally Posted by .BritainAndy
machs so wie ich
|
aber das versteh ich nicht *.*
ich möchte nur mit nem Button (GuI kann ich selbst erstellen) eine Adresse auf nen anderen Wert freezen.
|
|
|
11/14/2010, 13:15
|
#8
|
elite*gold: 42
Join Date: Jun 2008
Posts: 5,425
Received Thanks: 1,888
|
Quote:
Originally Posted by lolkop
hä?
du willst den pointer umleiten, also musst einfach in den pointer was reinschreiben -.-
Code:
memwrite($pointer, $new_adress)
|
Ich glaub eher, er will die value auslesen/ändern :x
@topic base auslesen, offset addieren, neue base auslesen usw :>
|
|
|
11/14/2010, 13:17
|
#9
|
elite*gold: 0
Join Date: Mar 2009
Posts: 2,317
Received Thanks: 1,255
|
Quote:
Originally Posted by eagly200
aber das versteh ich nicht *.*
ich möchte nur mit nem Button (GuI kann ich selbst erstellen) eine Adresse auf nen anderen Wert freezen.
|
Quote:
Originally Posted by eagly200
hi, ich hätte da mal ne Frage:
ich habe in Cheat engine einen Pointer gefunden den ich mit Autoit ändern will.
ich hab die SuFu benutz aber da steht nur was von Pointern die ne eigene Adresse haben kA aber ich habe so einen Pointer:
P>[Adresse]
und den pointer möchte ich in autoit verändern.
|
hmm? was den nun??
|
|
|
11/14/2010, 13:18
|
#10
|
elite*gold: 24
Join Date: Apr 2010
Posts: 35,827
Received Thanks: 6,344
|
Adresse und Pointer sind das nicht 2 paar Schuhe?
Wenn ich ne Adresse verändert habe, hab ich einfach mit MemoryWrite den Wert ändern lassen
PHP Code:
Case $Button1 _Hack()
Func _Hack() $PID = ProcessExists("bla.exe") ProcessWait($PID) $open = _MemoryOpen($PID) _MemoryWrite(0xaddr,$open, neuer wert, "value typ") EndFunc
Habs mir aber immer über ne Inputbox gemacht wo man den Wert selbst bestimmen kann.
PHP Code:
Case $Button1 _Hack()
Func _Hack() $value = GUICtrlRead($Input) $PID = ProcessExists("bla.exe") ProcessWait($PID) $open = _MemoryOpen($PID) _MemoryWrite(0xaddr,$open, $value, "value typ") EndFunc
|
|
|
11/14/2010, 13:35
|
#11
|
elite*gold: 0
Join Date: Jul 2010
Posts: 450
Received Thanks: 78
|
also es ist ein Pointer nur da man mich glaub ich falsch verstanden habe hab ich Adresse gesagt. aber gibts nicht irgend nen Befehl z.b. so:
[Befehl]([Adresse],[neuer Wert)
das kann man ja dann in eine Endlosschleife packen um es zu freezen.
|
|
|
11/14/2010, 13:39
|
#12
|
elite*gold: 0
Join Date: Mar 2009
Posts: 2,317
Received Thanks: 1,255
|
PHP Code:
AdlibRegister(_MemoryPointerWrite($Pointer, $Open, $Offset, $wert, "float/dword/whatever"))
keine ahnung ob du das meinst..
|
|
|
11/14/2010, 13:42
|
#13
|
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
|
willst du denn jetzt den pointer umleiten, oder das, auf was der pointer zeigt, ändern?
du sprichst immer abwechselnd mal davon, das du das eine willst, und mal vom andern...
|
|
|
11/14/2010, 13:54
|
#14
|
elite*gold: 0
Join Date: Jul 2010
Posts: 450
Received Thanks: 78
|
ich will den wert ändern
|
|
|
11/14/2010, 14:12
|
#15
|
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
|
dann liest du per ReadProcessMemory die adresse auf die der pointer zeigt ein, und schreibst dann, per WriteProcessMemory in die eingelesen Adresse deinen neuen wert
unter der annahme, das der pointer direkt auf deinen wert zeigt, könnte das ganze zb so aussehen:
Code:
Func PointerWrite($pid, $pointer, $neuer_wert, $typ)
;DLL Öffnen
Local $kernel32 = DllOpen('kernel32.dll')
;Prozess öffnen (mit full access)
Local $process = DllCall($kernel32, 'int', 'OpenProcess', 'int', 0x1F0FFF, 'int', 1, 'int', $pid)
;DllStruct für unsere einzulesende adresse erstellen (DWORD)
Local $read_struct = DllStructCreate('dword')
;adresse in struct speichern
DllCall($kernel32, 'int', 'ReadProcessMemory', 'int', $process[0], 'int', $pointer, 'ptr', DllStructGetPtr($read_struct), 'int', DllStructGetSize($read_struct), 'int', '')
;neue DllStrcut für den zu schreibeneden wert erstellen
Local $write_struct = DllStructCreate($typ)
;zu schreibenden wert in DllStrcut speichern
DllStructSetData($write_struct, $neuer_wert, 1)
;der eingelesenen adresse volle zugriffsrechte geben
Local $original = DllCall($kernel32, 'int', 'VirtualProtectEx', 'int', $process[0], 'ptr', DllStructGetData($read_struct, 1), 'int', DllStructGetSize($write_struct), 'dword', 0x40, 'dword*', 0)
;neuen wert in eingelesene adresse speichern
DllCall($kernel32, 'int', 'WriteProcessMemory', 'int', $process[0], 'int', DllStructGetData($read_struct, 1), 'ptr', DllStructGetPtr($write_struct), 'int', DllStructGetSize($write_struct), 'int', 0)
;ursprüngliche rechte wieder herstellen
DllCall($kernel32, 'int', 'VirtualProtectEx', 'int', $process[0], 'ptr', DllStructGetData($read_struct, 1), 'int', DllStructGetSize($write_struct), 'dword', $original[5], 'dword*', 0)
;geöffneten prozess schließen
DllCall($kernel32, 'int', 'CloseHandle', 'int', $process[0])
;geöffnete DLL schließen
DllClose($kernel32)
EndFunc
|
|
|
 |
|
Similar Threads
|
AutoIt-Pointer verwenden
06/01/2010 - General Coding - 0 Replies
*geklärt* Kann gelöscht werden...
|
AutoIT Pointer
05/02/2010 - General Coding - 3 Replies
Also ich habe nach längerem rumprobieren herausgefunden, wie ich Pointer aus CE in AutoIT benutze.
(Btw.: Irgendwie sind 99% der Tutorials dafür hier schlecht erklärt, die benutzten Includes fehlen oder sie funktionieren nicht.)
Ich habe bis jetzt den folgenden Programmcode.
#include<pointer.au3>
$pid = ProcessExists("sol.exe")
$handle=_MemoryOpen($pid)
|
Pointer in AutoIt einbinden
03/29/2010 - AutoIt - 1 Replies
Hi,
Ich wollte euch mal fragen ob ihr wisst wie man in AutoIt
einen Pointer einbindet!
Hat jmd(außer LordKill) ein Pointer einbind Tutorial für AutoIt? xD
Bekommt auhc ein Fettes THX :handsdown:
Also gut beschrieben wie z.B was die Function
GetProcess blablabla bringt und so.
Links wären auch sehr nett
|
Pointer für Autoit
12/07/2009 - AutoIt - 7 Replies
Hallöchen
bitte schlagt mich nicht bin schon alle möglichen tuts durchgegangen doch ich raff es einfach nicht.
http://img686.imageshack.us/img686/4291/unbenannt 1i.th.jpg
das hier ist mein Pointer doch wie schreib ich ihn nun in mein bot?
Hab keine Lust ihn immer rein zu schreib.
Wie gesagt bin schon ca 1 Woche daran und ich verzweifel langsam da ich nie ein gescheites Beispiel finde...
Hoffe einer kann mir helfen.
|
Pointer in AutoIT
11/20/2009 - AutoIt - 14 Replies
Hi, ich Programmiere grade einen Bot und komme nicht ganz weiter. Es geht darum das ich in Counter Strike mein Leben "einfrieren" will.
Dazu habe ich nun einen Pointer gefunden.
Wie kann ich nun auf den Pointer zugreifen? Habe mir schon paar Tuts angeschaut, aber schlau bin ich dadurch nicht geworden.
Mein Code:
Global $Adresse = 0x15452455
Dim $Offset =
|
All times are GMT +1. The time now is 03:39.
|
|