Probleme mit Autoit --Pls help

03/11/2009 18:31 Hotwert#1
Ich habe mit autoit ein tool geschrieben das alle x sekunden eine x-beliebige taste drückt. Benutzen will ich das für WOW zum casten oder healen oder mitn mage kekse herstellen.

Das ganze funzt schon nur wenn man f3 drückt wenn die while schleife nicht läuft beendet das das programm.
Der Stopp Button im gui funzt garnicht wärend das programm läuft. Das stoppen über f3 funzt allerdings(auser man drückt doppelt dann beendet das wieder das programm)
Der stop button funzt aber wenn die schleife nicht läuft aber beendet allerdings auch das programm.


Quote:
HotKeySet("{f2}", "start")
HotKeySet("{f3}", "stopp")
HotKeySet("{f10}", "exitit")
Func exitit()
Exit
EndFunc ;==>exitit

Func start()
While 1
Sleep(GUICtrlRead($Castzeit))
Send(GUICtrlRead($Input1))
WEnd
EndFunc ;==>start


#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>

#Region ### START Koda GUI section ### Form=
$Form1_1 = GUICreate("Hotwert", 333, 181, 203, 150, -1, BitOR($WS_EX_ACCEPTFILES,$WS_EX_WINDOWEDGE))
$Label1 = GUICtrlCreateLabel("Hotwert´s Auto cast Tool", 112, 160, 121, 17)
$Label2 = GUICtrlCreateLabel("F2 = Starten", 208, 32, 62, 17)
$Label3 = GUICtrlCreateLabel("F3 = Stoppen", 208, 48, 68, 17)
$Label4 = GUICtrlCreateLabel("F10 = Beenden", 208, 64, 77, 17)
$Castzeit = GUICtrlCreateInput("Castzeit", 16, 104, 81, 21)
$Input1 = GUICtrlCreateInput("Welche Taste?", 16, 128, 81, 21)
$Button1 = GUICtrlCreateButton("Starten", 8, 16, 113, 25, $WS_BORDER)
GUICtrlSetFont(-1, 10, 400, 0, "NSimSun")
GUICtrlSetCursor (-1, 0)
$Button2 = GUICtrlCreateButton("Stoppen", 8, 40, 113, 25, 0)
$Button3 = GUICtrlCreateButton("Beenden", 192, 88, 113, 33, 0)
$Label5 = GUICtrlCreateLabel("1 sekunde = 1000", 8, 80, 90, 17)
$Menuitem1 = GUICtrlCreateMenu("&Datei")
$MenuItem2 = GUICtrlCreateMenu("&Hilfe")
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

GUISetState()

While 1
$msg = GUIGetMsg()
Select
Case $msg = $GUI_EVENT_CLOSE
Exit
Case $msg = $Button2
stopp()
Case $msg = $Button1
While 1
Sleep(GUICtrlRead($Castzeit))
Send(GUICtrlRead($Input1))
Func stopp()
ExitLoop
EndFunc ;==>stopp
WEnd
Case $msg = $Button3
Exit
EndSelect
WEnd
03/11/2009 19:07 fieser-hund#2
du musst die funcs nach der GUI setzen^^

mfg
03/11/2009 20:49 Hotwert#3
Funcs nach der Gui zu setzen hat nichts gebracht.^^

Aber mitterweile hab ich die Lösung selber gefunden

Starten mit f2 beenden mit f3 ohne das programm durch mehrmaliges drücken zu beenden funzt nun.

Nur funzt der stop button im gui nicht.
Weis jemand ne Lösung?

Quote:
HotKeySet("{f2}", "start")
HotKeySet("{f3}", "stopp")
HotKeySet("{f10}", "exitit")

#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>

#Region ### START Koda GUI section ### Form=
$Form1_1 = GUICreate("Hotwert", 333, 181, 203, 150, -1, BitOR($WS_EX_ACCEPTFILES,$WS_EX_WINDOWEDGE))
$Label1 = GUICtrlCreateLabel("Hotwert´s Auto cast Tool", 112, 160, 121, 17)
$Label2 = GUICtrlCreateLabel("F2 = Starten", 208, 32, 62, 17)
$Label3 = GUICtrlCreateLabel("F3 = Stoppen", 208, 48, 68, 17)
$Label4 = GUICtrlCreateLabel("F10 = Beenden", 208, 64, 77, 17)
$Castzeit = GUICtrlCreateInput("Castzeit", 16, 104, 81, 21)
$Input1 = GUICtrlCreateInput("Welche Taste?", 16, 128, 81, 21)
$Button1 = GUICtrlCreateButton("Starten", 8, 16, 113, 25, $WS_BORDER)
GUICtrlSetFont(-1, 10, 400, 0, "NSimSun")
GUICtrlSetCursor (-1, 0)
$Button2 = GUICtrlCreateButton("Stoppen", 8, 40, 113, 25, 0)
$Button3 = GUICtrlCreateButton("Beenden", 192, 88, 113, 33, 0)
$Label5 = GUICtrlCreateLabel("1 sekunde = 1000", 8, 80, 90, 17)
$Menuitem1 = GUICtrlCreateMenu("&Datei")
$MenuItem2 = GUICtrlCreateMenu("&Hilfe")
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

Func exitit()
Exit
EndFunc ;==>exitit

Func start()
$msg = $Button1
EndFunc ;==>start

GUISetState()

While 1
$msg = GUIGetMsg()
Select
Case $msg = $GUI_EVENT_CLOSE
Exit
Case $msg = $Button2
If $msg = $Button1 then ExitLoop
Case $msg = $Button1
While 1
Sleep(GUICtrlRead($Castzeit))
Send(GUICtrlRead($Input1))
Func stopp()
If $msg = $Button1 then ExitLoop
EndFunc
WEnd
Case $msg = $Button3
Exit
EndSelect
WEnd
03/13/2009 23:45 Hotwert#4
Kann den niemand helfen? Ich bin vll. nochn noob aber was soll ich am anfang schon machen um die Sprache zu lernen?^^
Niemand verbesserungsvorschläge? Vll hab ich von grund auf schon alles falsch gemacht?
Sagts mir doch ich komm aus mit kritik.

Achja ich hab aus spass mal das gemacht:

HotKeySet("{f2}", "end")

Func End()
Exit
EndFunc ;==>End


while 1
$rnd1=Random(0,1800)
$rnd2=Random(0,899)
MouseMove($rnd1,$Rnd2)
$Coord = PixelSearch(98,64,1396,842, 0xE49F92)
If Not @error Then
MouseClick("left", $Coord[0], $Coord[1],1,1)
EndIf
WEnd


Das sollte die maus rnd rumsteuern und den Task Manager unter windows vista beenden wenn er gestartet wird damit man das programm net beenden kann.^^
Aber notfalls gehts ja mit f2
03/13/2009 23:45 Hotwert#5
Kann den niemand helfen? Ich bin vll. nochn noob aber was soll ich am anfang schon machen um die Sprache zu lernen?^^
Niemand verbesserungsvorschläge? Vll hab ich von grund auf schon alles falsch gemacht?
Sagts mir doch ich komm aus mit kritik.

Achja ich hab aus spass mal das gemacht:

HotKeySet("{f2}", "end")

Func End()
Exit
EndFunc ;==>End


while 1
$rnd1=Random(0,1800)
$rnd2=Random(0,899)
MouseMove($rnd1,$Rnd2)
$Coord = PixelSearch(98,64,1396,842, 0xE49F92)
If Not @error Then
MouseClick("left", $Coord[0], $Coord[1],1,1)
EndIf
WEnd


Das sollte die maus rnd rumsteuern und den Task Manager unter windows vista beenden wenn er gestartet wird damit man das programm net beenden kann.^^
Aber notfalls gehts ja mit f2
03/16/2009 00:44 kknb#6
meinste so?

Code:
HotKeySet("{f2}", "start")
HotKeySet("{f10}", "exitit")


#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <Misc.au3>

#Region ### START Koda GUI section ### Form=
$Form1_1 = GUICreate("Hotwert", 333, 181, 203, 150, -1, BitOR($WS_EX_ACCEPTFILES,$WS_EX_WINDOWEDGE))
$Label1 = GUICtrlCreateLabel("Hotwert´s Auto cast Tool", 112, 160, 121, 17)
$Label2 = GUICtrlCreateLabel("F2 = Starten", 208, 32, 62, 17)
$Label3 = GUICtrlCreateLabel("F3 = Stoppen", 208, 48, 68, 17)
$Label4 = GUICtrlCreateLabel("F10 = Beenden", 208, 64, 77, 17)
$Castzeit = GUICtrlCreateInput("Castzeit", 16, 104, 81, 21)
$Input1 = GUICtrlCreateInput("Welche Taste?", 16, 128, 81, 21)
$Button1 = GUICtrlCreateButton("Starten", 8, 16, 113, 25, $WS_BORDER)
GUICtrlSetFont(-1, 10, 400, 0, "NSimSun")
GUICtrlSetCursor (-1, 0)
$Button2 = GUICtrlCreateButton("Stoppen", 8, 40, 113, 25, 0)
$Button3 = GUICtrlCreateButton("Beenden", 192, 88, 113, 33, 0)
$Label5 = GUICtrlCreateLabel("1 sekunde = 1000", 8, 80, 90, 17)
$Menuitem1 = GUICtrlCreateMenu("&Datei")
$MenuItem2 = GUICtrlCreateMenu("&Hilfe")
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
$dll = DllOpen("user32.dll")

GUISetState()
go()
Func start()
	While 1
		$msg = GUIGetMsg()
	if $msg =  $Button2 or _IsPressed("72", $dll) Then 
		exitloop
		go()
	endif
		Sleep(GUICtrlRead($Castzeit))
		Send(GUICtrlRead($Input1))
	WEnd
EndFunc ;==>start

func go()
While 1
	$msg = GUIGetMsg()
	Select
		Case $msg = $GUI_EVENT_CLOSE
			Exit
		Case $msg = $Button1
			start()
		Case $msg = $Button3
		Exit
	EndSelect
WEnd
EndFunc

Func exitit()
Exit
EndFunc ;==>exitit
der pause button reagiert halt erst wenn die eingelesene sleepzeit einmal durch ist, wenns dir zu träge ist dann prüfe die eingabe der f taste oder des pause buttons nebenbei mit adlibenable.