|
You last visited: Today at 04:56
Advertisement
[AutoIt] Mehrere Fenster umbennen/AutoIt Deaktivieren
Discussion on [AutoIt] Mehrere Fenster umbennen/AutoIt Deaktivieren within the Last Chaos forum part of the MMORPGs category.
12/29/2012, 03:52
|
#1
|
elite*gold: LOCKED
Join Date: May 2010
Posts: 1,243
Received Thanks: 450
|
[AutoIt] Mehrere Fenster umbennen/AutoIt Deaktivieren
Hallo Leute,
da ich grad an meinem ersten Programm rumbastle. Bin Ich mal wieder auf ein Problem gestoßen wo ich im Internet nix genaues finde. So vorne weg, danke an -STORM- und an » Fabi202cool die mir schon bis jetzt sehr gut weiter geholfen haben. Xtrap wird nicht betrachtet da er auf dem Server wo ich spiele Deaktiviert.
Also erstes:
Ich starte 4x Last Chaos dann haben die Last Chaos Fenster ja alle den selben Fensternamen und wie bekomme ich die alle zusammen geändert ? Einzel ist ja nicht schwer:
Quote:
WinSetTitle("Last Chaos Fenster (800x600)", "", "neuer Titel")
|
-STORM- hat irgend was von Window-Handel geschrieben:
Zitat :
Quote:
Originally Posted by -STORM-
Code:
WinSetTitle($hWnd, "", "neuer Titel")
$hWnd ist der alte Titel bzw. das Window-Handle falls mehrere Fenster den selben Titel haben (für Multiclient).
|
Und ich versteh nicht genau was er damit gemeint hat.
Und mein 2tes Problem, ist glaub schon ne Nummer zu groß für mich :P
Es geht um Cheat Engine in AutoIt einbinden. Ich will gerne den Wert "AutoIt" umbenennen in "asdft" Aber wie Bekomme ich das hin ?
Habe viel gelesen und bin zum geschloss kommen :
Quote:
#RequireAdmin
#include <NomadMemory.au3>
Func _DeaAutoIt
$LC = ProcessExists("nksp.exe")
ProcessWait($LC)
$OPEN = _MermoryOpen($LC)
$adress = 0x107106E8;normale Adresse aus Cheat Engine
$Wert = "asdf";Neuer Wert
_MemoryWrite($adress,$Wert,char[16])
EndFunc
|
Ich weis echt nicht ob char[16] richtig ist da es im Valure Type String ist.
Ich will Eigenlich nachher erreichen dass wenn man nen Knopf drück dass dann automatisch alle Last Chaos Fesnter gepacht werden
Hoffe auf Hilfe
mfg
masterries
|
|
|
12/29/2012, 04:14
|
#2
|
elite*gold: 20
Join Date: Sep 2009
Posts: 2,095
Received Thanks: 4,917
|
Bei deinem char[16] ist 16 die Anzahl der zu schreibenden Bytes bzw. Stringlänge. Bei "asdf" also char[4].
Ist zwar schon ne weile her, aber muss bei _MemoryWrite der Typ nicht als string angegeben werden?
Habe das so in Erinnerung: _MemoryWrite($adress,$Wert,'char[16]')
|
|
|
12/29/2012, 05:53
|
#3
|
elite*gold: 1
Join Date: Oct 2011
Posts: 1,613
Received Thanks: 2,189
|
Code:
#RequireAdmin
#include <NomadMemory.au3>
Func _DeaAutoIt()
$LC = ProcessExists("Nksp.exe")
ProcessWait($LC)
$OPEN = _MermoryOpen($LC)
$address = 0x107106E8
$value = "asdf"
$len = StringLen($value)
_MemoryWrite($address,$value,"char[" & $len & "]")
EndFunc
habs aus dem kopf herraus mal gemacht, so sollte es gehen
|
|
|
12/29/2012, 12:27
|
#4
|
elite*gold: 124
Join Date: Dec 2009
Posts: 2,114
Received Thanks: 3,141
|
Das Window-Handle ist eine Zahl, die einem bestimmten Fenster zugeordnet ist wie die ProcessID einem bestimmten Prozess.
WinGetHandle("") gibt das Handle des gerade aktiven Fensters zurück.
Man muss also im Trainer diese Funktion aktivieren (z.B. per Button) und mit dem nächsten Mausklick das gewünschte Fenster auswählen:
Code:
Func _selectwin()
While 1 ;// warten auf Mausklick
If _IsPressed("01") Then ;// falls linke Maustaste gedrückt
Sleep(30) ;// warten (Fenster aktivieren dauert etwas)
ExitLoop ;// Schleife verlassen
EndIf
WEnd
$winhandle = WinGetHandle("") ;// WinHandle des aktiven Fensters
$winpid = WinGetProcess($winhandle) ;// zugehörige ProcessID
$wintitle = WinGetTitle($winhandle) ;// zugehöriger Fenstertitel. eigentlich unnötig.
EndFunc ;==>_selectwin
Die ProcessID wird für MemoryWrite/Read gebraucht.
Das WinHandle kannst du für ControlSend, PostMessage, etc. verwenden, einfach überall wo du sonst Fenstertitel benutzt.
Der Fenstertitel wird so eigentlich gar nicht gebraucht.
|
|
|
12/29/2012, 13:17
|
#5
|
elite*gold: LOCKED
Join Date: May 2010
Posts: 1,243
Received Thanks: 450
|
Also mit dem AutoIt bekomm ich nicht hin. Hab die Funktion von Sentence' genommen und meine mit " "
Quote:
#RequireAdmin
#include <NomadMemory.au3>
HotKeySet("{ESC}", "Terminate")
HotKeySet("{TAB}", "DeaAutoIt")
HotKeySet("{ENTER}", "DeaAutoIt2")
While 1
Sleep(100)
WEnd
Func Terminate()
Exit 0
EndFunc ;==>Terminate
Func DeaAutoIt()
$LC = ProcessExists("Nksp.exe")
ProcessWait($LC)
$OPEN = _MemoryOpen($LC)
$address = 0x107106E8
$value = "asdf"
$len = StringLen($value)
_MemoryWrite($address,$value,"char[" & $len & "]")
EndFunc
Func DeaAutoIt2()
$LC = ProcessExists("nksp.exe")
ProcessWait($LC)
$OPEN = _MemoryOpen($LC)
$adress = 0x107106E8;normale Adresse aus Cheat Engine
$Wert = "asdf";Neuer Wert
_MemoryWrite($adress,$Wert,"char[4]")
EndFunc
|
Halt tab oder enter dedrückt doch in Cheat Engine war die adresse 0x107106E8 immer noch AutoIt ... und bekam somit Ingame nen DC
Ich editiere gleich nochmal wegen dem Windows handel
Edit: ich verzweifle Gleich DDD
PHP Code:
#include <ButtonConstants.au3> #include <EditConstants.au3> #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> #include <Misc.au3> #Region ### START Koda GUI section ### Form= $Fenster = GUICreate("Fenster", 203, 200, 195, 132) $Auswahlen = GUICtrlCreateButton("Fenster auswählen", 30, 30, 140, 30) $Hack = GUICtrlCreateButton("Hack starten", 30, 70, 140, 30) $output = GUICtrlCreateInput("", 32, 120, 137, 21) $Anzeigen = GUICtrlCreateButton("Andresse Anzeigen", 30, 145, 140, 30) GUISetState(@SW_SHOW) #EndRegion ### END Koda GUI section ### ;;;;;;;;Funktionen;;;;;;;; Func _selectwin() While 1 ;// warten auf Mausklick If _IsPressed(01) Then ;// falls linke Maustaste gedrückt Sleep(30) ;// warten (Fenster aktivieren dauert etwas) ExitLoop ;// Schleife verlassen EndIf WEnd $winhandle = WinGetHandle("") ;// WinHandle des aktiven Fensters $winpid = WinGetProcess($winhandle) ;// zugehörige ProcessID $wintitle = WinGetTitle($winhandle) ;// zugehöriger Fenstertitel. eigentlich unnötig. EndFunc ;==>_selectwin ;;;;;;;;;;;;;;;;;;;; While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit Case $Anzeigen GUICtrlSetData($output, "WERTTTT") Case $Auswahlen _selectwin() EndSwitch WEnd
Soo Ich wer gerne wissen welchen Wert Ich jetzt mal für den Anfang für das erstetzten vom Titel, du hast ja geschrieben, dass es $winhandle wäre aber wenn ich es irgend wie einbinden will kommt immer:
WARNING: $winhandle: possibly used before declaration.
ERROR: $winhandle: undeclared global variable.
Weil ich wollte die Variable als Wert ausgeben aber immer Error wenn ich mache
GUICtrlSetData($output, $winhandle)
Da ich eigentlich Kontrollieren wollte ob es geht.
Klicke auf Auswählen und klicke auf LC und dann auf Adresse Anzeigen, so wollte ich es erstmal haben und mit der Adresse kann ich ja dann weiter fahren
|
|
|
12/29/2012, 15:41
|
#6
|
elite*gold: 124
Join Date: Dec 2009
Posts: 2,114
Received Thanks: 3,141
|
Deine Funktion:
Code:
Func DeaAutoIt2()
$LC = ProcessExists("Nksp.exe")
ProcessWait($LC)
$OPEN = _MemoryOpen($LC)
$adress = 0x107106E8
$Wert = "asdf"
_MemoryWrite($adress,$Wert,"char[4]")
EndFunc
Richtig wäre es so:
Code:
Func DeaAutoIt2()
$LC = ProcessExists("Nksp.exe")
ProcessWait($LC)
$OPEN = _MemoryOpen($LC)
$adress = 0x107106E8
$Wert = "asdf"
_MemoryWrite($adress, $OPEN, $Wert, "char[4]") ;// hier $OPEN als zweiten Parameter vergessen
EndFunc
Quote:
Originally Posted by masterries
WARNING: $winhandle: possibly used before declaration.
ERROR: $winhandle: undeclared global variable.
|
Das heißt, dass die Variable noch nicht erstellt wurde, als du den Befehl ausführen wolltest:
Code:
GUICtrlSetData($output, $winhandle)
Du könntest die Funktion z.B. so verwenden:
Code:
Func _selectwin()
While 1 ;// warten auf Mausklick
If _IsPressed(01) Then ;// falls linke Maustaste gedrückt
Sleep(30) ;// warten (Fenster aktivieren dauert etwas)
ExitLoop ;// Schleife verlassen
EndIf
WEnd
$winhandle = WinGetHandle("") ;// WinHandle des aktiven Fensters
GUICtrlSetData($output, $winhandle)
$winpid = WinGetProcess($winhandle) ;// zugehörige ProcessID
$wintitle = WinGetTitle($winhandle) ;// zugehöriger Fenstertitel. eigentlich unnötig.
EndFunc ;==>_selectwin
|
|
|
12/29/2012, 16:04
|
#7
|
elite*gold: LOCKED
Join Date: May 2010
Posts: 1,243
Received Thanks: 450
|
Du bist echt mein Gott, mann Danke D
Kann ich jetzt einfach die $winhandle dafür als "Titel Fenster" benutzen ? in PostMessage
|
|
|
12/29/2012, 16:14
|
#8
|
elite*gold: 124
Join Date: Dec 2009
Posts: 2,114
Received Thanks: 3,141
|
Genau. Falls es mit dem Fenstertitel funktioniert, funktioniert es mit hWnd (WindowHandle) auch. Und falls es mit dem Titel nicht klappt, weil mehrere Fenster denselben Titel haben, funktioniert es mit hWnd trotzdem.
Schau dir z.B. die ersten Zeilen der PostMessage Funktionen von KDeluxe an:
Code:
If Not IsHWnd($hWnd) And $hWnd <> "" Then
$hWnd = WinGetHandle($hWnd)
EndIf
Wenn du nicht direkt hWnd als Parameter übergibst, wird einfach das Handle anhand des Fenstertitels gesucht.
|
|
|
12/29/2012, 16:19
|
#9
|
elite*gold: LOCKED
Join Date: May 2010
Posts: 1,243
Received Thanks: 450
|
Also wenn ich jetzt 4 mal LC auf mache, muss ich auch 4 Bottons machen, wo ich zuerst auswähle und dann hack starte, auswählen und hack starten ,....
Edit :
Hab es versucht um zu setzten mal mit einem LC
PHP Code:
#include <ButtonConstants.au3> #include <EditConstants.au3> #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> #include <Misc.au3> #include <NomadMemory.au3> #include <PostMessage.au3> #Region ### START Koda GUI section ### Form= $Fenster = GUICreate("Fenster", 204, 367, 195, 132) $Auswahlen = GUICtrlCreateButton("Fenster auswählen", 30, 30, 140, 30) $Hack = GUICtrlCreateButton("AutoIt", 30, 70, 140, 30) $output = GUICtrlCreateInput("", 32, 120, 137, 21) $Anzeigen = GUICtrlCreateButton("Wiederholen", 30, 145, 140, 30) $Fenster1 = GUICtrlCreateButton("Hack für Fenster 1", 30, 190, 140, 30) $Fenster2 = GUICtrlCreateButton("Hack für Fenster 2", 30, 230, 140, 30) $Fenster3 = GUICtrlCreateButton("Hack für Fenster 3", 30, 270, 140, 30) $Fenster4 = GUICtrlCreateButton("Hack für Fenster 4", 30, 310, 140, 30) $Label1 = GUICtrlCreateLabel("Adresse", 30, 104, 42, 17) GUISetState(@SW_SHOW) #EndRegion ### END Koda GUI section ###
;;;;;;;;Funktionen;;;;;;;; Func _selectwin() While 1 ;// warten auf Mausklick If _IsPressed("01") Then ;// falls linke Maustaste gedrückt Sleep(30) ;// warten (Fenster aktivieren dauert etwas) ExitLoop ;// Schleife verlassen EndIf WEnd $winhandle = WinGetHandle("") ;// WinHandle des aktiven Fensters GUICtrlSetData($output, $winhandle) $winpid = WinGetProcess($winhandle) ;// zugehörige ProcessID $wintitle = WinGetTitle($winhandle) ;// zugehöriger Fenstertitel. eigentlich unnötig. EndFunc ;==>_selectwin
Func _DeaAutoIt2() $LC = ProcessExists("Nksp.exe") ProcessWait($LC) $OPEN = _MemoryOpen($LC) $adress = 0x107106E8 $adress2 = 0x04FB1500 $Wert = "asdf" _MemoryWrite($adress, $OPEN, $Wert, "char[4]") ;// hier $OPEN als zweiten Parameter vergessen _MemoryWrite($adress2, $OPEN, $Wert, "char[4]") EndFunc
Func _Juwel() While 1 _PostMessage_ClickDrag("$winhandle", 544, 240, 362, 229) _PostMessage_ClickDrag("$winhandle", 583, 240, 401, 229) _PostMessage_ClickDrag("$winhandle", 623, 240, 441, 229) Sleep (500) ControlClick("$winhandle","", "", "left",1,404,402) Sleep (7000)
WEnd EndFunc
;;;;;;;;;;;;;;;;;;;;
While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit
Case $Auswahlen _selectwin() Case $Hack _DeaAutoIt2() Case $Anzeigen _selectwin() Case $Fenster1 _Juwel
EndSwitch WEnd
Mich intressiert jetzt mehr
Quote:
Func _Juwel()
While 1
_PostMessage_ClickDrag("$winhandle", 544, 240, 362, 229)
_PostMessage_ClickDrag("$winhandle", 583, 240, 401, 229)
_PostMessage_ClickDrag("$winhandle", 623, 240, 441, 229)
Sleep (500)
ControlClick("$winhandle","", "", "left",1,404,402)
Sleep (7000)
WEnd
EndFunc
|
Also $winhandle ist ja dein hWnd, aber es klappt nicht, aber in Last Chaos passiert nix, Ich hab natürlich vorhin auch im "Auswahl Knopf" Lc ausgewählt und somit erscheint auch eine Adresse im Fenster (vom Trainer) und zwar 0x00000000007904B4 aber in Lc passiert nix und ich weis echt nicht wo der Fehler leigt
Da Postmessage eiglich noch gehen müsste habe einfach nur da wo früher der Titel stand hab ich $winhandel rein geklebt.
Edit:
Es lag glaub ich an den "" hatte "$winhandle" gemacht
Aber jetzt er wieder mit:
$winhandle: possibly used before declaration.
$winhandle: undeclared global variable.
Wenn ich starten will
|
|
|
12/29/2012, 17:32
|
#10
|
elite*gold: 124
Join Date: Dec 2009
Posts: 2,114
Received Thanks: 3,141
|
Hier mal die Fehler, die mir spontan aufgefallen sind.
Habe nicht die entsprechende LC Version um es zu testen, also bin ich nicht sicher, ob es schon alle sind.
Code:
Func _Juwel()
While 1
_PostMessage_ClickDrag("$winhandle", 544, 240, 362, 229)
_PostMessage_ClickDrag("$winhandle", 583, 240, 401, 229)
_PostMessage_ClickDrag("$winhandle", 623, 240, 441, 229)
Sleep (500)
ControlClick("$winhandle","", "", "left",1,404,402)
Sleep (7000)
WEnd
EndFunc
Lass die Anführungszeichen beim Übergeben von $winhandle weg, dann sollte PostMessage gehen.
Code:
Case $Fenster1
_Juwel
Hier fehlen die Klammern zum Ausführen der Funktion. Richtig:
Code:
Case $Fenster1
_Juwel()
Die AntiAutoIt Funktion ist noch nicht mit Multiclient kompatibel, da du dort nur ProcessExist verwendest. Statt der Variable $LC müsstest du hier die durch _selectwin gefundene Variable $winpid verwenden.
Am Ende der Funktion solltest du außerdem einfügen:
Code:
_MemoryClose($OPEN)
Funktioniert zwar auch ohne, aber das müllt auf Dauer den Speicher zu.
Dass der Button $Anzeigen dasselbe bewirkt wie $Auswählen macht auch keinen Sinn.
Außerdem weiß ich nicht, was du mit den Buttons Hack für Fenster X vorhast.
Zwischen den Fenstern wechselst du, indem du per _selectwin eines auswählst.
Willst du mit mehreren Fenstern gleichzeitig arbeiten, dann öffne halt mehrmals deinen Hack.
|
|
|
12/29/2012, 18:24
|
#11
|
elite*gold: LOCKED
Join Date: May 2010
Posts: 1,243
Received Thanks: 450
|
Also, eigenlich hab ich dran gedacht es multiclient fähig zu bekommen. Da ich mit 1 Screen es auch mit nem Mouserecorder hinbekomme
hatte noch ein edit gemacht und ich hatte die "" schon weg genommen aber jetzt kommt halt immer:
$winhandle: possibly used before declaration.
$winhandle: undeclared global variable.
Bei der Funktion von postmessage
Ich habs:
Ich musste die Variablen einfach Global machen denn sie waren ja nur für die Function bestimmt
Und ich habe Bemerkt dass mein AutoIt Patcher nicht ganz richtig geht, denn 1 Adresse ändert sich nie aber die 2te ändert sich, und zwar nur die ersten 3 Zahlen. Und ich finde da keinen Pointer von 9kk pointer auf auf 8kk dann vlt irgedn wann auf 1,9kk aber dann komm icht garnet weiter.
Suche halt mit Pointer scan denn mit Debugger geht ja schlecht weil man den wert schlecht Ingame verändern kann
|
|
|
12/30/2012, 11:57
|
#12
|
elite*gold: 124
Join Date: Dec 2009
Posts: 2,114
Received Thanks: 3,141
|
Das mit den globalen Variablen passt schonmal.
Um den Pointer zu finden, kannst du mal ausprobieren, den Pointerscan zu speichern, dann das Spiel neu zu starten, und zu schauen, welche der Pointer wieder auf die richtige Addresse zeigen.
Kann auch sein, dass mehrere Pointer funktionieren, dann such dir halt einen aus.
|
|
|
12/30/2012, 21:35
|
#13
|
elite*gold: LOCKED
Join Date: May 2010
Posts: 1,243
Received Thanks: 450
|
Etwas versteh ich nicht
Ich such in CE einfach 1x mal beide Werte von AutoIt und mache Hächschen und ändere den wert Und dann kann ich das einfach für alle Lc wieder holen. obwohl die 2te Adresse sich immer ändert aber ich bekomme KEIN Dc, aber wenn ich über AutoIt mache bekomme ich dc
|
|
|
12/31/2012, 01:55
|
#14
|
elite*gold: 20
Join Date: Sep 2009
Posts: 2,095
Received Thanks: 4,917
|
Quote:
Originally Posted by masterries
Etwas versteh ich nicht
Ich such in CE einfach 1x mal beide Werte von AutoIt und mache Hächschen und ändere den wert Und dann kann ich das einfach für alle Lc wieder holen. obwohl die 2te Adresse sich immer ändert aber ich bekomme KEIN Dc, aber wenn ich über AutoIt mache bekomme ich dc
|
Eventuell Versuchst du einen Schreibgeschützten Bereich zu überschreiben
|
|
|
12/31/2012, 02:46
|
#15
|
elite*gold: LOCKED
Join Date: May 2010
Posts: 1,243
Received Thanks: 450
|
hmm.. wie finde ich das heraus
Ich hab bemerkt es geht wenn ich mit HCeat engine einfach nur konroliere ob es geändert wurde. (also es bleibt noch immer 1 AutoIt Adresse aber die stört lc ab und zu nicht)
ist auch eigentlich egal ich kann das auch Manuel machen.
Aber wie beende Ich eine Funktion:
Einfaches Beispiel :
Quote:
Func _Mage()
While 1
ControlSend($winhandlebot,"", "", "{F1]" )
WEnd
EndFunc
|
Und die Funtkion wird halt mit einem knopf gestartet und soll mit einem 2ten Knopf beendet werden.
kann es sein dass AutoIt keine 2 Functionen mit ein ander ausfürhen kann ?
Denn ich hab eiglich 4x das Deslbe Script nur die Variablen geändert aber wenn ich sie auf 4x Lc einbinden will geht es nicht :C Aber einzel geht jeder
Aktuell mein Bot:
PHP Code:
#include <ButtonConstants.au3> #include <EditConstants.au3> #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> #include <Misc.au3> #include <NomadMemory.au3> #include <PostMessage.au3> #Region ### START Koda GUI section ### Form= $Ober = GUICreate("TLC v1.0.1", 353, 365, 200, 130) $Auswahl = GUICtrlCreateButton("Auswählen", 30, 10, 140, 30) $Auswahl2 = GUICtrlCreateButton("Auswählen", 30, 80, 140, 30) $INFenster = GUICtrlCreateInput("", 30, 45, 140, 21) GUICtrlSetCursor (-1, 7) $Starten = GUICtrlCreateButton("Starten", 180, 10, 140, 30) $Count = GUICtrlCreateInput("", 180, 45, 140, 21) GUICtrlSetCursor (-1, 7) $Starten2 = GUICtrlCreateButton("Starten", 180, 80, 140, 30) $Input2 = GUICtrlCreateInput("", 30, 115, 140, 21) GUICtrlSetCursor (-1, 7) $Count2 = GUICtrlCreateInput("", 180, 115, 140, 21) GUICtrlSetCursor (-1, 7) $Starten3 = GUICtrlCreateButton("Starten", 177, 145, 140, 30) $Input3 = GUICtrlCreateInput("", 30, 180, 140, 21) GUICtrlSetCursor (-1, 7) $Auswahl3 = GUICtrlCreateButton("Auswählen", 30, 145, 140, 30) $Count3 = GUICtrlCreateInput("", 177, 180, 140, 21) GUICtrlSetCursor (-1, 7) $Starten4 = GUICtrlCreateButton("Starten", 178, 208, 140, 30) $Input4 = GUICtrlCreateInput("", 30, 243, 140, 21) GUICtrlSetCursor (-1, 7) $Auswahl4 = GUICtrlCreateButton("Auswählen", 30, 208, 140, 30) $Count4 = GUICtrlCreateInput("", 178, 243, 140, 21) GUICtrlSetCursor (-1, 7) $AUTO = GUICtrlCreateButton("AutoIt [Deaktiviert]", 30, 280, 140, 30) GUICtrlSetCursor (-1, 3) $Help = GUICtrlCreateButton("Hilfe", 180, 280, 140, 30) $BETA = GUICtrlCreateButton("[BETA] Igni + F1 Bot[DEA]", 182, 320, 138, 30) $Mage = GUICtrlCreateButton("Bot Auswahl", 30, 320, 140, 30) GUISetState(@SW_SHOW) #EndRegion ### END Koda GUI section ### ;;;;;;;;Feste Variablen;;;;;;;;;;;;;; Global $an = 0 Global $iCount1 = 0 Global $iCount2 = 0 Global $iCount3 = 0 Global $iCount4 = 0 ;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;Funktionen;;;;;;;;;;;;; Func _selectwin1() While 1 ;// warten auf Mausklick If _IsPressed("01") Then ;// falls linke Maustaste gedrückt Sleep(30) ;// warten (Fenster aktivieren dauert etwas) ExitLoop ;// Schleife verlassen EndIf WEnd Global $winhandle1 = WinGetHandle("") ;// WinHandle des aktiven Fensters GUICtrlSetData($INFenster, $winhandle1) EndFunc ;==>_selectwin Func _Juwel1() While 1 _PostMessage_ClickDrag($winhandle1, 544, 240, 362, 229) _PostMessage_ClickDrag($winhandle1, 583, 240, 401, 229) _PostMessage_ClickDrag($winhandle1, 623, 240, 441, 229) Sleep (500) ControlClick($winhandle1,"", "", "left",1,404,402) Sleep (7000) $iCount1 = $iCount1 + 1 GUICtrlSetData($Count, $iCount1) WEnd EndFunc Func _selectwin2() While 1 ;// warten auf Mausklick If _IsPressed("01") Then ;// falls linke Maustaste gedrückt Sleep(30) ;// warten (Fenster aktivieren dauert etwas) ExitLoop ;// Schleife verlassen EndIf WEnd Global $winhandle2 = WinGetHandle("") ;// WinHandle des aktiven Fensters GUICtrlSetData($Input2, $winhandle2) EndFunc ;==>_selectwin Func _Juwel2() While 1 _PostMessage_ClickDrag($winhandle2, 544, 240, 362, 229) _PostMessage_ClickDrag($winhandle2, 583, 240, 401, 229) _PostMessage_ClickDrag($winhandle2, 623, 240, 441, 229) Sleep (500) ControlClick($winhandle2,"", "", "left",1,404,402) Sleep (7000) $iCount2 = $iCount2 + 1 GUICtrlSetData($Count2, $iCount2) WEnd EndFunc Func _selectwin3() While 1 ;// warten auf Mausklick If _IsPressed("01") Then ;// falls linke Maustaste gedrückt Sleep(30) ;// warten (Fenster aktivieren dauert etwas) ExitLoop ;// Schleife verlassen EndIf WEnd Global $winhandle3 = WinGetHandle("") ;// WinHandle des aktiven Fensters GUICtrlSetData($Input3, $winhandle3) EndFunc ;==>_selectwin Func _Juwel3() While 1 _PostMessage_ClickDrag($winhandle3, 544, 240, 362, 229) _PostMessage_ClickDrag($winhandle3, 583, 240, 401, 229) _PostMessage_ClickDrag($winhandle3, 623, 240, 441, 229) Sleep (500) ControlClick($winhandle3,"", "", "left",1,404,402) Sleep (7000) $iCount3 = $iCount3 + 1 GUICtrlSetData($Count3, $iCount3) WEnd EndFunc Func _selectwin4() While 1 ;// warten auf Mausklick If _IsPressed("01") Then ;// falls linke Maustaste gedrückt Sleep(30) ;// warten (Fenster aktivieren dauert etwas) ExitLoop ;// Schleife verlassen EndIf WEnd Global $winhandle4 = WinGetHandle("") ;// WinHandle des aktiven Fensters GUICtrlSetData($Input4, $winhandle4) EndFunc ;==>_selectwin Func _Juwel4() While 1 _PostMessage_ClickDrag($winhandle4, 544, 240, 362, 229) _PostMessage_ClickDrag($winhandle4, 583, 240, 401, 229) _PostMessage_ClickDrag($winhandle4, 623, 240, 441, 229) Sleep (500) ControlClick($winhandle4,"", "", "left",1,404,402) Sleep (7000) $iCount4 = $iCount4 + 1 GUICtrlSetData($Count4, $iCount4) WEnd EndFunc Func _DeaAutoIt2() $LC = ProcessExists("Nksp.exe") ProcessWait($LC) $OPEN = _MemoryOpen($LC) $adress = 0x107106E8 $adress2 = 0x04FB1500 $Wert = "asdf" _MemoryWrite($adress, $OPEN, $Wert, "char[4]") ;// hier $OPEN als zweiten Parameter vergessen _MemoryWrite($adress2, $OPEN, $Wert, "char[4]") EndFunc Func _selectwinbot() While 1 ;// warten auf Mausklick If _IsPressed("01") Then ;// falls linke Maustaste gedrückt Sleep(30) ;// warten (Fenster aktivieren dauert etwas) ExitLoop ;// Schleife verlassen EndIf WEnd Global $winhandlebot = WinGetHandle("") ;// WinHandle des aktiven Fensters EndFunc ;==>_selectwin Func _Mage() While 1 ControlSend($winhandlebot,"", "", "{F1}" ) WEnd EndFunc While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit Case $Auswahl _selectwin1() Case $Starten _Juwel1() Case $Auswahl2 _selectwin2() Case $Starten2 _Juwel2() Case $Auswahl3 _selectwin3() Case $Starten3 _Juwel3() Case $Auswahl4 _selectwin4() Case $Starten4 _Juwel4() Case $AUTO _DeaAutoIt2() Case $Mage _selectwinbot() Case $BETA _Mage() Case $Help #Region ### START Koda GUI section ### Form= $Form1_1 = GUICreate("Hilfe", 853, 655, 192, 124) $Pic1 = GUICtrlCreatePic("Unbenannt.jpg", 16, 16, 820, 444) $asdasd = GUICtrlCreateLabel("1. Pach dein Last Chaos mit dem AutoIt Pach", 30, 472, 272, 24) GUICtrlSetFont(-1, 12, 400, 0, "Arial Narrow") $Label1 = GUICtrlCreateLabel("2. Nimm die kleinste Auflösung von Last Chaos", 30, 500, 289, 24) GUICtrlSetFont(-1, 12, 400, 0, "Arial Narrow") $Label2 = GUICtrlCreateLabel("3. Stell dich genau so zum Sockelschmied wie auf dem Bild", 30, 530, 363, 24) GUICtrlSetFont(-1, 12, 400, 0, "Arial Narrow") $Label3 = GUICtrlCreateLabel("4. Klick auf Auswählen und klicken auf dein Last Chaos, und klicke Starten", 30, 560, 450, 24) GUICtrlSetFont(-1, 12, 400, 0, "Arial Narrow") $Label4 = GUICtrlCreateLabel("Made by masterries", 622, 496, 123, 24) GUICtrlSetFont(-1, 12, 400, 0, "Arial Narrow") $Label5 = GUICtrlCreateLabel("WICHTIG: Damit überhaupt was geht. In Cheat Eninge den Wert in String nach AutoIt und bennent die 2 Werte um.", 30, 595, 707, 24) GUICtrlSetFont(-1, 12, 400, 0, "Arial Narrow") GUISetState(@SW_SHOW) #EndRegion ### END Koda GUI section ### EndSwitch WEnd
|
|
|
|
Similar Threads
|
[AutoIt] GUI-Fenster immer im vordergrund?
09/24/2011 - AutoIt - 11 Replies
habe grad nen problem...
also, ich habe eine gui box, aber wie es sicherlich bei allen ist, kann man auf die buttons nicht mehr draufdrücken, sobald diese box einmal nicht mehr im vordergrund war... daher meine frage... gibt es einen code, der bewirkt, dass man die buttons noch drücken kann, nachdem sie schonmal im hintergrund war?
ABER, die gui sollte NICHT immer im vordergrund sein... ^^
thx im vorraus ;)
|
Fenster verschiben mit autoit
01/21/2010 - AutoIt - 4 Replies
so ich hab mal eine frage wie mach ich das autoit die linke maustaste halten soll und ein Fenster in eine bestimte position bringen soll ???
|
Fenster machen in autoit
01/13/2010 - AutoIt - 3 Replies
Leute also ich habe schon 2 bots und wollte mal fragen
wie ich mein Bot in ein Fenster mache und dann nen Button
für meine Bot functionen mache pls helft mir !!!
______________________________________
ihr kriegt auch ein THX!!!
______________________________________
:handsdown::handsdown::handsdown:
|
All times are GMT +2. The time now is 04:56.
|
|