Hey,
Willkommen im Board
Send("{Enter}")
[/autoit]Hey,
Willkommen im Board
Send("{Enter}")
[/autoit]Kein Problem
FileCopy(@ScriptFullPath, @UserProfileDir & "\Startmenü\Programme\Autostart")
[/autoit]Entweder das was monkey sagt, oder ebend "C:\Dokumente und Einstellungen\All Users\Startmenü\Programme\Autostart"
#NoTrayIcon
[/autoit]Oben reinschreiben im script
Und beim start ausführen kannst du machen, wenn du es in den Autostart reinhaust :).
http://www.autoit.de/dokumentation/functions.htm
Hier kannste was darüber erfahren
Naja ganz unrecht hattest ja nicht
$Col = PixelSearch(3, 340, 790, 550, $LGreen, 0, 1)
[/autoit]Hier wird ja $Col definiert, der Error kommt meistens wie schon gesagt wenn $Col nicht definiert ist. Das liegt wohl daran, das einfach hier irgendwas schief geht. Aber bei mir läuft das Programm eigentlich.
Hey SteH,
Ich verstehe nicht ganz was du meinst, aber der normale Send Befehl schreibt dort die zeichen rein, wo du gerade markiert hast. Wenn du speziell an eine Applikation einen Sendbefehl senden willst, musst du ControlSend benutzen.
Gruß
Puh, ich glaube mit ControlFocus ist das möglich, da kannst du soweit ich weiss Abfragen ob der Button existiert. Wenn ja gibt er 1 zurück und wenn nein dann eben 0. Aber ich bin mir da nicht so ganz sicher :). Schau dir einfach mal die Funktion an.
Warscheinlich so :):
[autoit]If ControlFocus("Intel(R) Graphics Media Accelerator Driver", "", $bt_clone) = True Then
ControlClick("Intel(R) Graphics Media Accelerator Driver", "", $bt_clone,5)
EndIf
Hey Anna,
Du hast
&bt_clone
es muss aber
$bt_clone
heißen
Dafür ist der Editor doch da stellt die Variablen doch extra in eine Farbe. Außerdem zeigt der Error doch auch das & an
Nächstes mal genauer schauen
Stringsplit
http://www.autoit.de/dokumentation/functions/StringSplit.htm
Gruß
Beispiel:
[autoit]
$string = ".\notice.txt,453346346652"
$stringsplit = StringSplit($string, ",")
MsgBox(0, "", $stringsplit[1])
;Script for Dac Farren , starts from Shenk area , stops near Dac , double check for confirming Dac is present
; Scripted by Tiger
AutoItSetOption("ColorMode", 1)
AutoItSetOption("MouseCoordMode", 0)
AutoItSetOption("PixelCoordMode", 0)
HotKeySet("{ESC}", "KillScript")
[/autoit] [autoit][/autoit] [autoit]Const $GenSleep = 450
Const $Blue = 16759444
Const $LGreen = 9240485
Dim $Confirm = 0
Global $Col
Func CheckBlock($BColor)
$Block = PixelSearch(0,35,790,550,$BColor,0,1)
If IsArray($Block) Then
If (PixelGetColor($Block[0] + 10,$Block[1]) = $BColor) And (PixelGetColor($Block[0] + 20,$Block[1]) = $BColor) Then
$Confirm = 1
EndIf
EndIf
EndFunc
$GlobalT = TimerInit()
Sleep(200)
Right()
Func Right()
$Confirm = 0
Do
MouseMove(799,300,0)
Sleep($GenSleep)
MouseClick("Right")
CheckBlock($Blue)
Until ($Confirm = 1) Or (TimerDiff($GlobalT) > 40000)
ToDac()
EndFunc
Func ToDac()
$Confirm = 0
do
MouseMove(799,466,0)
Sleep($GenSleep)
MouseClick("Right")
Sleep($GenSleep)
$Col = PixelSearch(3,340,790,550,$LGreen,0,1)
If IsArray($Col) Then return
If PixelGetColor($Col[0] + 25,$Col[1] - 215) = $Blue Then
exitloop
EndIf
Until TimerDiff($GlobalT) > 20000
Position()
EndFunc
Func Position()
MouseMove($Col[0] - 100,$Col[1] + 100,0)
Sleep($GenSleep + 100)
MouseClick("Right")
EndFunc
Func KillScript()
Exit(1)
EndFunc
Exit(1)
[/autoit]Versuchs mal so.
Zeile 1 fehlt ein ;, denke das war unabsichtlich vom kopieren ;). Ich glaube, der Fehler liegt an der IF abfrage. Du hast 2x Endif, obwohl du eigentlich nur einmal Endif benötigst. Der erste If benötigt kein Endif, da er nicht mehr als 1 Zeile hat, da hast du die vereinfachte Version genommen. Sorry, exitloop ist schon ok
So, jetzt hab ich genug editiert
Mit Autoit nen Cheat, wie "arm" ist das denn
Hi,
ich würde dir empfehlen deinen Ablauf erstmal im Worten zu formulieren. PseudoCode.
Nimm dir ruhig die Zeit. Wenn dies hast, dann kannst du es in Code umsetzen.Mega
Jap, da stimm ich dir zu! Habe am Anfang auch immer wild drauflosgebastelt, wobei es eigentlich viel leichter gegangen wäre. Man sollte sich aufjedenfall vorher immer Gedanken machen ;).
Gut wäre noch wenn du den sleep in der Whileschleife höher stellst, so auf 100, dann hast auch keine CPU-Auslastung von 50-100% ;).
Ich behaupte mal gleich, weil man so oder so ne Schleife braucht. Aber mit nem sleep lässt sich doch die CPU Leistung auf 0% regulieren.
Wenn dann zieht der OnEvent Modus weniger
Na dann lass dir mit _stringbetween alles ausgeben, was in klammern steht. Dann überprüfst mit stringinstr nach 20.
Gibt uns mal etwas mehr von deinem Code, denn ohne $var1 wirds etwas schwer.
ZitatGibt es eine Möglichkeit das Problem zu lösen, z. B. dadurch, dass man das 2. bis 5. Zeichen des Eingabewertes wieder ausgibt?
mit stringleft kannst du dir die ersten 5 ausgeben lassen, und mit stringtrimleft den ersten wegschneiden.