Hallo Zusammen!
Erstattet bitte Anzeige bei der Polizei.
Was der oder die gemacht hat ist eine Straftat würde ich sagen. Die haben doch heute auch Abteilungen die sich um Internet Kriminalität kümmern.
Hallo Zusammen!
Erstattet bitte Anzeige bei der Polizei.
Was der oder die gemacht hat ist eine Straftat würde ich sagen. Die haben doch heute auch Abteilungen die sich um Internet Kriminalität kümmern.
Hallo Zusammen!
Ich benutze Maxthon als Browser und wenn ich auf den automatischen RSS hinzufügen Button Klicke kommt eine Fehlermeldung, das der link nicht in Ordnung ist.
In dem Link eingabefenster stehet http://autoit.aufwaerts.de/<rssurl>, stehen sollte aber http://autoit.aufwaerts.de/rss.php.
Vielleicht kann einer der Admins da was machen.
Danke!
Hallo Zusammen!
Kann man AutoIt auch in Hochsprachen wie C, C++,… einbinden?
MFG
BarnyHop
Hallo Zusammen
Das Beispiel ist für Minesweeper (ver.5.1.2600.0) von WinXP SP2 gemacht.
MFG
BarnyHop
Hallo Zusammen
Habe wieder mal etwas zeit gehabt und ein kleines Beispiel erstellt.
Schaut es euch an...
MFG
BarnyHop
#include <Array.au3>
#include <GUIConstants.au3>
GUICreate("MineSweeper test Trainer", 300, 100);Fenster erstellen
GUICtrlCreateLabel("Test Text:", 30, 10) ;Text anzeigen
GUISetState(@SW_SHOW) ;Fenster anzeigen
$pid = WinGetProcess("MineSweeper") ;process auswehlen
While 1 ;schleife START
$msg = GUIGetMsg()
$pid = WinGetProcess("MineSweeper") ;process auswehlen
$OpenProccess = _MemOpen($pid)
$Read = _MemRead($OpenProccess, 0x1005194, 1) ;1 byts auslesen von der Adresse 0x1005194
If ($Read[0])= 9 Then ;Überprüfen ob die adrese den wert 9 hat
_MemWrite($OpenProccess, 0x1005194,_MemCreate(11));in die Adresse 0x1005194 den wert 11 schreiben
MsgBox(4096,"Joo!",$Read[0])
EndIf
_MemClose($OpenProccess)
If $msg = $GUI_EVENT_CLOSE Then ExitLoop
WEnd
;-----------------------------------------------------------------------------------------------------------------------
;Mem functions von w0uter aud dem [URL]http://www.autoitscript.com/forum/index.php?showtopic=19329&hl=mem[/URL] FORUM
#region _Mem()
Func _MemOpen($i_Pid, $i_Access = 0x1F0FFF, $i_Inherit = 0)
Local $av_Return[2] = [DllOpen('kernel32.dll') ]
Local $ai_Handle = DllCall($av_Return[0], 'int', 'OpenProcess', 'int', $i_Access, 'int', $i_Inherit, 'int', $i_Pid)
If @error Then
DllClose($av_Return[0])
SetError(1)
Return 0
EndIf
$av_Return[1] = $ai_Handle[0]
Return $av_Return
EndFunc ;==>_MemOpen
Func _MemRead($ah_Mem, $i_Address, $i_Size = 0)
If $i_Size = 0 Then
Local $v_Return = ''
Local $v_Struct = DllStructCreate('byte[1]')
Local $v_Ret
While 1
$v_Ret = DllCall($ah_Mem[0], 'int', 'ReadProcessMemory', 'int', $ah_Mem[1], 'int', $i_Address, 'ptr', DllStructGetPtr($v_Struct), 'int', 1, 'int', '')
$v_Ret = DllStructGetData($v_Struct, 1)
If $v_Ret = 0 Then ExitLoop
$v_Return &= Chr($v_Ret)
$i_Address += 1
WEnd
Else
Local $v_Struct = DllStructCreate('byte[' & $i_Size & ']')
Local $v_Ret = DllCall($ah_Mem[0], 'int', 'ReadProcessMemory', 'int', $ah_Mem[1], 'int', $i_Address, 'ptr', DllStructGetPtr($v_Struct), 'int', $i_Size, 'int', '')
Local $v_Return[$v_Ret[4]]
For $i = 0 To $v_Ret[4] - 1
$v_Return[$i] = DllStructGetData($v_Struct, 1, $i + 1)
Next
EndIf
Return $v_Return
EndFunc ;==>_MemRead
Func _MemWrite($ah_Mem, $i_Address, $v_Inject)
Local $av_Call = DllCall($ah_Mem[0], 'int', 'WriteProcessMemory', 'int', $ah_Mem[1], 'int', $i_Address, 'ptr', DllStructGetPtr($v_Inject), 'int', DllStructGetSize($v_Inject), 'int', '')
Return $av_Call[0]
EndFunc ;==>_MemWrite
Func _MemClose($ah_Mem)
Local $av_Ret = DllCall($ah_Mem[0], 'int', 'CloseHandle', 'int', $ah_Mem[1])
DllClose($ah_Mem[0])
Return $av_Ret[0]
EndFunc ;==>_MemClose
Func _MemCreate($1, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, _
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, _
$30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, _
$44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, _
$58 = 0, $59 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $70 = 0, $71 = 0, _
$72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, _
$86 = 0, $87 = 0, $88 = 0, $89 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0)
If IsString($1) Then
$1 = StringSplit($1, '')
Local $v_Helper = DllStructCreate('byte[' & UBound($1) & ']')
For $i = 1 To UBound($1) - 1
DllStructSetData($v_Helper, 1, Asc($1[$i]), $i)
Next
Else
Local $v_Helper = DllStructCreate('byte[' & @NumParams & ']')
For $i = 1 To @NumParams
DllStructSetData($v_Helper, 1, Eval($i), $i)
Next
EndIf
Return $v_Helper
EndFunc ;==>_MemCreate
Func _MemRev($v_DWORD)
If UBound($v_DWORD) = 4 Then Return '0x' & Hex($v_DWORD[3], 2) & Hex($v_DWORD[2], 2) & Hex($v_DWORD[1], 2) & Hex($v_DWORD[0], 2)
Local $v_Ret[4] = ['0x' & StringMid(Hex($v_DWORD, 8), 7, 2), '0x' & StringMid(Hex($v_DWORD, 8), 5, 2), '0x' & StringMid(Hex($v_DWORD, 8), 3, 2), '0x' & StringMid(Hex($v_DWORD, 8), 1, 2) ]
Return $v_Ret
EndFunc ;==>_MemRev
Func _MemAlloc($ah_Mem, $i_Size, $i_Address = 0, $i_AT = 4096, $i_Protect = 0x40)
Switch @OSVersion
Case "WIN_ME", "WIN_98", "WIN_95"
$av_Alloc = DllCall($ah_Mem[0], 'int', 'VirtualAlloc', 'int', $i_Address, 'int', $i_Size, 'int', BitOR($i_AT, 0x8000000), 'int', $i_Protect)
Case Else
$av_Alloc = DllCall($ah_Mem[0], 'int', 'VirtualAllocEx', 'int', $ah_Mem[1], 'int', $i_Address, 'int', $i_Size, 'int', $i_AT, 'int', $i_Protect)
EndSwitch
Return $av_Alloc[0]
EndFunc ;==>_MemAlloc
Func _MemFree($ah_Mem, $i_Address)
Switch @OSVersion
Case "WIN_ME", "WIN_98", "WIN_95"
$av_Free = DllCall($ah_Mem[0], 'int', 'VirtualFree', 'int', $i_Address, 'int', 0, 'int', 0x8000)
Case Else
$av_Free = DllCall($ah_Mem[0], 'int', 'VirtualFreeEx', 'int', $ah_Mem[1], 'int', $i_Address, 'int', 0, 'int', 0x8000)
EndSwitch
Return $av_Free[0]
EndFunc ;==>_MemFree
Func _MemText($ah_Mem, $s_Text)
Local $i_Size = StringLen($s_Text) + 1
Local $i_Addr = _MemAlloc($ah_Mem, $i_Size)
_MemWrite($ah_Mem, $i_Addr, _MemCreate($s_Text))
Return $i_Addr
EndFunc ;==>_MemText
#endregion
Alles anzeigen
An wen spenden und wie viel?
5 EURO bin ich beriet vielleicht auch 10.
wir brauchen 99 EURO
UPS
Habe gerade gesehen das ihr PayPal eingerichtet habt.
Hallo Zusammen!
Was mir gut gefallen würde für das Forum wehre RSS.
Das hat aber die Vollversion auch nicht.
MFG
BarnyHop
Hallo!
Welche AutoIt version benutzt du?
Ich habe die 3.1.1.113 beta.
Mit der 3.1.1.1 funktionierts nicht.
MFG
BarnyHop
Hallo Zusammen!
Habe das Problem mit Read/WriteProcessMemory gelöst. Ausgedacht habe ich es mir nicht selber sondern nur zusammengestellt aus anderen Beiträgen. Den Funktionstest habe ich mit MineSweeper gemacht. Aber schaut es euch an und versucht es selber.
#include <Array.au3>
$pid = WinGetProcess("MineSweeper") ;process auswählen
MsgBox(0,"","PID: " & $pid )
$OpenProccess = _MemOpen($pid)
If @error Then
MsgBox(0,"error","error opening process.")
Exit
EndIf
$Read = _MemRead($OpenProccess, 0x1005194, 4) ;4 byts auslesen von der Adresse 0x1005194
If IsArray($Read) Then
_ArrayDisplay($Read, "Read Var" ) ;anzeigen was gelesen wurde
EndIf
_MemWrite($OpenProccess, 0x1005194,_MemCreate(100));in die Adresse 0x1005194 den wert 100 schreiben
_MemClose($OpenProccess)
;-----------------------------------------------------------------------------------------------------------------------
;Mem functions von w0uter aud dem [URL]http://www.autoitscript.com/forum/index.php?showtopic=19329&hl=mem[/URL] FORUM
#region _Mem()
Func _MemOpen($i_Pid, $i_Access = 0x1F0FFF, $i_Inherit = 0)
Local $av_Return[2] = [DllOpen('kernel32.dll') ]
Local $ai_Handle = DllCall($av_Return[0], 'int', 'OpenProcess', 'int', $i_Access, 'int', $i_Inherit, 'int', $i_Pid)
If @error Then
DllClose($av_Return[0])
SetError(1)
Return 0
EndIf
$av_Return[1] = $ai_Handle[0]
Return $av_Return
EndFunc ;==>_MemOpen
Func _MemRead($ah_Mem, $i_Address, $i_Size = 0)
If $i_Size = 0 Then
Local $v_Return = ''
Local $v_Struct = DllStructCreate('byte[1]')
Local $v_Ret
While 1
$v_Ret = DllCall($ah_Mem[0], 'int', 'ReadProcessMemory', 'int', $ah_Mem[1], 'int', $i_Address, 'ptr', DllStructGetPtr($v_Struct), 'int', 1, 'int', '')
$v_Ret = DllStructGetData($v_Struct, 1)
If $v_Ret = 0 Then ExitLoop
$v_Return &= Chr($v_Ret)
$i_Address += 1
WEnd
Else
Local $v_Struct = DllStructCreate('byte[' & $i_Size & ']')
Local $v_Ret = DllCall($ah_Mem[0], 'int', 'ReadProcessMemory', 'int', $ah_Mem[1], 'int', $i_Address, 'ptr', DllStructGetPtr($v_Struct), 'int', $i_Size, 'int', '')
Local $v_Return[$v_Ret[4]]
For $i = 0 To $v_Ret[4] - 1
$v_Return[$i] = DllStructGetData($v_Struct, 1, $i + 1)
Next
EndIf
Return $v_Return
EndFunc ;==>_MemRead
Func _MemWrite($ah_Mem, $i_Address, $v_Inject)
Local $av_Call = DllCall($ah_Mem[0], 'int', 'WriteProcessMemory', 'int', $ah_Mem[1], 'int', $i_Address, 'ptr', DllStructGetPtr($v_Inject), 'int', DllStructGetSize($v_Inject), 'int', '')
Return $av_Call[0]
EndFunc ;==>_MemWrite
Func _MemClose($ah_Mem)
Local $av_Ret = DllCall($ah_Mem[0], 'int', 'CloseHandle', 'int', $ah_Mem[1])
DllClose($ah_Mem[0])
Return $av_Ret[0]
EndFunc ;==>_MemClose
Func _MemCreate($1, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, _
$16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, _
$30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, _
$44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, _
$58 = 0, $59 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $70 = 0, $71 = 0, _
$72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, _
$86 = 0, $87 = 0, $88 = 0, $89 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0)
If IsString($1) Then
$1 = StringSplit($1, '')
Local $v_Helper = DllStructCreate('byte[' & UBound($1) & ']')
For $i = 1 To UBound($1) - 1
DllStructSetData($v_Helper, 1, Asc($1[$i]), $i)
Next
Else
Local $v_Helper = DllStructCreate('byte[' & @NumParams & ']')
For $i = 1 To @NumParams
DllStructSetData($v_Helper, 1, Eval($i), $i)
Next
EndIf
Return $v_Helper
EndFunc ;==>_MemCreate
Func _MemRev($v_DWORD)
If UBound($v_DWORD) = 4 Then Return '0x' & Hex($v_DWORD[3], 2) & Hex($v_DWORD[2], 2) & Hex($v_DWORD[1], 2) & Hex($v_DWORD[0], 2)
Local $v_Ret[4] = ['0x' & StringMid(Hex($v_DWORD, 8), 7, 2), '0x' & StringMid(Hex($v_DWORD, 8), 5, 2), '0x' & StringMid(Hex($v_DWORD, 8), 3, 2), '0x' & StringMid(Hex($v_DWORD, 8), 1, 2) ]
Return $v_Ret
EndFunc ;==>_MemRev
Func _MemAlloc($ah_Mem, $i_Size, $i_Address = 0, $i_AT = 4096, $i_Protect = 0x40)
Switch @OSVersion
Case "WIN_ME", "WIN_98", "WIN_95"
$av_Alloc = DllCall($ah_Mem[0], 'int', 'VirtualAlloc', 'int', $i_Address, 'int', $i_Size, 'int', BitOR($i_AT, 0x8000000), 'int', $i_Protect)
Case Else
$av_Alloc = DllCall($ah_Mem[0], 'int', 'VirtualAllocEx', 'int', $ah_Mem[1], 'int', $i_Address, 'int', $i_Size, 'int', $i_AT, 'int', $i_Protect)
EndSwitch
Return $av_Alloc[0]
EndFunc ;==>_MemAlloc
Func _MemFree($ah_Mem, $i_Address)
Switch @OSVersion
Case "WIN_ME", "WIN_98", "WIN_95"
$av_Free = DllCall($ah_Mem[0], 'int', 'VirtualFree', 'int', $i_Address, 'int', 0, 'int', 0x8000)
Case Else
$av_Free = DllCall($ah_Mem[0], 'int', 'VirtualFreeEx', 'int', $ah_Mem[1], 'int', $i_Address, 'int', 0, 'int', 0x8000)
EndSwitch
Return $av_Free[0]
EndFunc ;==>_MemFree
Func _MemText($ah_Mem, $s_Text)
Local $i_Size = StringLen($s_Text) + 1
Local $i_Addr = _MemAlloc($ah_Mem, $i_Size)
_MemWrite($ah_Mem, $i_Addr, _MemCreate($s_Text))
Return $i_Addr
EndFunc ;==>_MemText
#endregion
Alles anzeigen
PS EnClAvE: Es ist nicht WoW. Dafür brauch man sich nichts mehr überlegen sondern nur noch runterladen. Sollten wir am gleichen Projekt arbeiten dann können wir gerne zusammen arbeiten.
MFG
BarnyHop
Hallo peethebee!
Ich habe mir die Mem Sachen angeschaut bring aber keines zum laufen.
Kannst du mir bitte helfen und mir sagen was da verkehrt ist.
Danke!
BarnyHop
PS: Einen Fehler habe ich schon gefunden. Ich muss die aktuelle Beta benutzen.
Anmerkung: Der Code ist nicht von mir sondern aus dem http://www.autoitscript.com/forum/index.php? Forum .
HotKeySet("{Esc}", "killbot")
Func killbot()
Exit 0
EndFunc
Opt("WinTitleMatchMode", 3)
$pid = WinGetProcess("MineSweeper")
$open = _MemOpen($pid)
$read = _MemRead($open,0x4A1240,4)
MsgBox(0,"",$read)
;_MemWrite($open,0x4A1240,100)
;------------------------------------------------------------MEM-Funktionen-------------------------------------------------------------------
Func _MemOpen($i_Pid, $i_Access = 0x1F0FFF, $i_Inherit = 0)
Local $av_Return[2] = [DllOpen('kernel32.dll') ]
Local $ai_Handle = DllCall($av_Return[0], 'int', 'OpenProcess', 'int', $i_Access, 'int', $i_Inherit, 'int', $i_Pid)
If @error Then
DllClose($av_Return[0])
SetError(1)
Return 0
EndIf
$av_Return[1] = $ai_Handle[0]
Return $av_Return
EndFunc ;==>_MemOpen
Func _MemRead($ah_Mem, $i_Address, $i_Size = 0)
If $i_Size = 0 Then
Local $v_Return = ''
Local $v_Struct = DllStructCreate('byte[1]')
Local $v_Ret
While 1
$v_Ret = DllCall($ah_Mem[0], 'int', 'ReadProcessMemory', 'int', $ah_Mem[1], 'int', $i_Address, 'ptr', DllStructGetPtr($v_Struct), 'int', 1, 'int', '')
$v_Ret = DllStructGetData($v_Struct, 1)
If $v_Ret = 0 Then ExitLoop
$v_Return &= Chr($v_Ret)
$i_Address += 1
WEnd
Else
Local $v_Struct = DllStructCreate('byte[' & $i_Size & ']')
Local $v_Ret = DllCall($ah_Mem[0], 'int', 'ReadProcessMemory', 'int', $ah_Mem[1], 'int', $i_Address, 'ptr', DllStructGetPtr($v_Struct), 'int', $i_Size, 'int', '')
Local $v_Return[$v_Ret[4]]
For $i = 0 To $v_Ret[4] - 1
$v_Return[$i] = DllStructGetData($v_Struct, 1, $i + 1)
Next
EndIf
Return $v_Return
EndFunc ;==>_MemRead
Func _MemWrite($ah_Mem, $i_Address, $v_Inject)
Local $av_Call = DllCall($ah_Mem[0], 'int', 'WriteProcessMemory', 'int', $ah_Mem[1], 'int', $i_Address, 'ptr', DllStructGetPtr($v_Inject), 'int', DllStructGetSize($v_Inject), 'int', '')
Return $av_Call[0]
EndFunc ;==>_MemWrite
Func _MemClose($ah_Mem)
Local $av_Ret = DllCall($ah_Mem[0], 'int', 'CloseHandle', 'int', $ah_Mem[1])
DllClose($ah_Mem[0])
Return $av_Ret[0]
EndFunc ;==>_MemClose
Alles anzeigen
Hallo peethebee
Danke für den Link. Habe ihn bereits über Google gefunden und bin schon am studieren wie das alles funktionieren sol.
Ich arbeite an einem Bot für ein spiel das ich hier nicht nennen will. Der bot funktioniert schon aber jetzt geht’s um die Feinarbeit und Verbesserungen. Ein der Funktionen die ich mit ReadProcessMemory lösen will ist das aufheben von Gegenständen. Im spiel ist nämlich ein Zähler der mir sagt wie viele Gegenstände in meiner Umgebung liegen. Habe das bisher mit PixelSearch gemacht und einer schleife die ich x mal durchlaufen lies. Das will ich jetzt mit dem Zähler machen dafür muss sich ihn aber aus der Speicheradresse online lesen.
Na ja schauen wir mal was raus kommt.
MFG
BarnyHop
PS: Dein link funktioniert nicht. Ein c zuviel in https://autoit.de/www.autoitsc c ript.com...
Hallo Zusammen!
Ich beschäftige mich erst seit kurzem mit AutoIt und bin begeistert.
Meinen frage kann ich mit AutoIt eine Speicheradresse (ReadProcessMemory) auslesen, aus einem laufendem Prozess.
z.B. Anzahl der Leben aus einem Spiel oder…
DANKE!
MFG
BarnyHop