CE-pointer in autoit

11/14/2010 14:38 eagly200#16
ich versteh trotzdem nur Bahnhof...
11/14/2010 14:46 .BritainAndy#17
was verstehst du denn nicht?

weißt du was baseaddress, offsets usw sind?
11/14/2010 15:01 eagly200#18
nö^^
aber da mir das ganze im Moment noch zu hoch ist lass ich das lieber weiter zu fragen.
11/14/2010 17:42 .BritainAndy#19
gut ;)
11/14/2010 21:03 Lighthex#20
Hier mal mit GUI mit auslesen und einschreiben ...
etc etc etc ...
Wichtig du braucht Pointer.au3
wenn du eine Erklärung willst dann poste mal bitte nochmal
Quote:
#RequireAdmin
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <Pointer.au3>
$start="no"
$SelectedProcess="xxxx" ;<----KOmmt der Processname rein
$PID = ProcessExists("" & $SelectedProcess & "")
If $PID > 0 Then
$Handle = _MemoryOpen($PID)
$Address = _MemoryModuleGetBaseAddress(ProcessExists("" & $SelectedProcess & ""), "" & $SelectedProcess & "")
$Address = "0x" & Hex($Address + Dec("20AA1C")) ;<------Hier kommt die Addresse rein
Dim $Offset[2] = [0, 0x0E] ;<----Offsets (0 muss bleiben)
Else
MsgBox(1, "Fehler", "Der Prozess existiert nicht !")
EndIf

$x = _MemoryPointerRead($Address, $Handle, $Offset,"dword") ;<---- wenn es 4bytes sind dann dword wenn es 2 sind dann short
$savevalue= $x[1] ;Array weiß auch nicht warum xD
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 306, 112, 192, 124)
$Input1 = GUICtrlCreateInput(, 8, 16, 289, 21)
$Button1 = GUICtrlCreateButton("Ändern starten", 8, 48, 139, 25, $WS_GROUP)
$Button2 = GUICtrlCreateButton("Ändern stoppen", 160, 48, 139, 25, $WS_GROUP)
$Button3 = GUICtrlCreateButton("Standart", 8, 80, 291, 25, $WS_GROUP)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
$start="yes"
Case $Button2
$start="no"
Case $Button3
_MemoryPointerWrite($Address,$Handle,$Offset,$save value,"dword") ;<---- wenn es 4bytes sind dann dword wenn es 2 sind dann short
EndSwitch
If $start ="yes" Then
starten()
EndIf
WEnd

Func starten ()
_MemoryPointerWrite($Address,$Handle,$Offset,GUICt rlRead($Input1),"dword")
EndFunc