@DaisukeHideki
Das war schon richtig von ihm. In deinem Beispiel wird die Variable $lol dann halt nur von GUICtrlCreatePic benutzt.
Beiträge von Molaynox
-
-
Versuch mal bei dem 1ten Parameter von FileInstall den kompletten Pfad anzugeben.
-
[autoit]
If BitAnd(WinGetState($mainwindow), 16) Then
[/autoit]
MsgBox(0,"TEST-MINIMIERT","TEST-MINIMIERT")
EndIf
Edit: Da war mal wieder wer schneller :pinch: -
Also entweder das Fenster dann neu erstellen lassen oder nicht mit GUIDelete arbeiten sondern mit GUISetState(@SW_HIDE)
-
Mit der Funktion GUIDelete() geht das.
-
Vielleicht mal das hier ausprobieren: http://www.netzwerktotal.de/windows7telnet.htm
-
Die Buttons oder hier eher Bilder als Array erstellen wie du es gemacht hast und dann z.B. in einer For Schleife abfragen.
Spoiler anzeigen
[autoit]For $i = 0 To UBound($SetPic) - 1
[/autoit]
Case $SetPic[$i]
; ...
Next -
Da könntest du die FF.au3 benutzen.
-
Deutlich leichter hingegen ist die Funktion StringInStr("string", "substring" [, casesense [, occurrence [, start [, count]]]])
Die überprüft ob ein String z.B. Hallo in einem String vorkommt. -
In ScITE auf Tools und dann auf Au3Info.
Dann das Fadenkreuz auf ein Control deiner Wahl ziehen. (Halt das mit dem du irgendwas machen willst.)
Und dann dafür die Funktionen verwenden die mit Control anfangen. -
[autoit]
ControlClick("BMC Remedy User - [SAD:Auftragssteuerung BA/FA (Suchen)]", "", 21006)
[/autoit] -
Oder mit ein Windows Media Player Object direkt vom Server abspielen wie ein Stream.
Dazu hab ich mal nen Stream Player programmiert: https://autoit.de/index.php?page=Thread&threadID=23452 -
Super, genau so etwas habe ich gesucht um ein Skript zu debuggen ohne überall ConsoleWrites hinzukopieren was vor allem bei der FF.au3 schlecht geht weil die sehr viel in die Console schreibt.
-
Wenn dieses Popup immer die selbe URL öffnet dann könntest du ja auch einfach direkt auf die URL des Popups navigieren statt erst auf die Website die es öffnet.
-
BadBunny Deins funktioniert nur an sonnigen Tagen , weil im StringBetween der 3te Parameter schon die Anzeige enthält die z.B. anzeigt ob es sonnig ist.
So geht es bei mir:Spoiler anzeigen
[autoit]#include <String.au3>
[/autoit]
#include <Inet.au3>
#include <Array.au3>
$sInet = _INetGetSource("http://www.wetter.com/deutschland/hagen/DE0004054.html")
$aBetween = _StringBetween($sInet, 'style="margin-bottom:4px">', "°C</div>")
$aBetween[0] &= "°C"
_ArrayDisplay($aBetween) -
Bplaced hat mir auch mal wegen einem fehlenden Impressum den Server gesperrt. :pinch: Hab nich mal meine Daten bekommen. (Hoffe du hast n Backup )
-
XovoxKingdom
Ich hab das mal für die geskriptet das man in ein Input nur bestimmte Zeichen eintragen kann:Spoiler anzeigen
[autoit]#cs
[/autoit] [autoit][/autoit] [autoit]
GUI - Nur bestimmte Zeichen in Input/Edit zulassen
Author: Molaynox
E-Mail: [email='black.eyes.soft@gmx.de'][/email]
AutoIt Version: 3.3.6.1
#ce#include <EditConstants.au3>
[/autoit] [autoit][/autoit] [autoit]
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>$hGui = GUICreate("TestGui", 382, 70, -1, -1) ; GUI erstellen
[/autoit] [autoit][/autoit] [autoit]
$hInputZ = GUICtrlCreateInput("", 16, 8, 265, 21) ; 1. Input erstellen
$hInputB = GUICtrlCreateInput("", 16, 40, 265, 21) ; 2. Input erstellen
GUICtrlCreateLabel("Nur Zahlen", 288, 8, 57, 17) ; Hinweis Label erstellen
GUICtrlCreateLabel("Nur Buchstaben", 288, 40, 81, 17) ; Hinweis Label erstellen
GUISetState(@SW_SHOW)While 1 ; While Schleife starten
[/autoit]
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
$sReadZ = GUICtrlRead($hInputZ) ; Input 1 auslesen
$sReadB = GUICtrlRead($hInputB) ; Input 2 auslesen
$sOutput = StringRegExpReplace($sReadZ, "\d", "") ; Aus dem Ausgelesenen alle Zahlen herausfiltern
$sOutput2 = StringRegExpReplace($sReadB, "\w", "") ; Aus dem Ausgelesenen alle Buchstaben herausfiltern
GUICtrlSetData($hInputZ, $sOutput) ; Das Gefilterte wieder ins Input setzen
GUICtrlSetData($hInputB, $sOutput2) ; Das Gefilterte wieder ins Input setzen
Sleep(10) ; 10 ms warten damit die Gui nicht flackert
WEnd ; Weiter ab While
Grundsätzlich könnte man so auch ganze Wörter aus dem Input fernhalten mit StringReplace.
Wenn man nur Nummern eingeben will dann reicht auch der Input Stil $ES_NUMBER. -
Das mit den Sekunden kann man mit TimerInit und TimerDiff lösen.
Das überprüfen ob sich was geändert hat kann man machen indem man z.b. alle 200 ms den Text ausliest und in einer Variable speichert. Dann mit If abfragen ob in der Variable das selbe steht wie im Edit.
Hier habe ich mal so etwas gebaut:Spoiler anzeigen
[autoit]#cs
[/autoit] [autoit][/autoit] [autoit]
GUI - Bei Veränderung Funktion aufrufenAuthor: Molaynox
[/autoit] [autoit][/autoit] [autoit]
E-Mail: [email='black.eyes.soft@gmx.de'][/email]AutoIt Version: 3.3.6.1
[/autoit] [autoit][/autoit] [autoit]
#ce#include <ButtonConstants.au3>
[/autoit] [autoit][/autoit] [autoit]
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>$hGui = GUICreate("GUI - Bei Veränderung Funktion aufrufen", 480, 200, -1, -1) ; GUI erstellen
[/autoit] [autoit][/autoit] [autoit]
$hEdit = GUICtrlCreateEdit("", 0, 0, 480, 130) ; Edit Control erstellen
GUICtrlSetData(-1, "Anfangstext") ; Text ins Edit Control setzen
$hBtn = GUICtrlCreateButton("Ich bin ein Button", 135, 150, 200, 35, $WS_GROUP) ; Button erstellen
GUISetState(@SW_SHOW) ; GUI anzeigen$sLastText = GUICtrlRead($hEdit) ; Aktuellen Text von hEdit in $sLastText speichern
[/autoit] [autoit][/autoit] [autoit]
$hTimer = 0 ; 0 in die Variable schreiben die später für den Timer benötigt wird damit keine Fehler auftretenWhile 1 ; While Schleife starten
[/autoit]
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE ; Prüfen ob das X geklickt wurde
Exit
Case $hBtn ; Prüfen ob der Button geklickt wurde
MsgBox(64, "Button geklickt.", "Button 1 wurde geklickt") ; Wenn ja dann MsgBox anzeigen
EndSwitch
If $sLastText <> GUICtrlRead($hEdit) Then ; Überprüfen ob aktueller Text nicht mit zuletzt gespeichertem Text übereinstimmt
$hTimer = TimerInit() ; Einen Timer Starten/leeren. Mit TimerDiff($hTimer) auslesen (Rückgabe in ms)
GUICtrlSetState($hBtn, $GUI_DISABLE) ; $hBtn disablen
MsgBox(64, "Info", "Es hat sich etwas geändert.") ; Wenn ja dann MsgBox anzeigen
EndIf
If TimerDiff($hTimer) > 2500 Then ; Überprüfen ob der Timer länger als 2,5 Sekunden läuft
GUICtrlSetState($hBtn, $GUI_ENABLE)
EndIf
$sLastText = GUICtrlRead($hEdit) ; Aktuellen Text von hEdit in $sLastText speichern
Sleep(20) ; 20 ms warten damit die Gui nicht flackert wenn der Button disabled/enabled wird
WEnd ; Ab hier wieder zum While springen und Skript von dort fortsetzen -
So müsste es nach den Infos des Au3Info Tools gehen.
[autoit]
[/autoit]
ControlCLick("Lotus Notes 8.5.1 (Basic) de - Installationsassistent","&Weiter >","[CLASS:BUTTON; INSTANCE:3; ID:5990]") -
Hier nochmal ein kleines Beispielscript zur Verwendung von FileSelectFolder und FileInstall.
Spoiler anzeigen
[autoit]#cs
[/autoit] [autoit][/autoit] [autoit]
FileInstall BeispielAuthor: Molaynox
[/autoit] [autoit][/autoit] [autoit]
E-Mail: [email='black.eyes.soft@gmx.de'][/email]Hinweis: Dieses Script benötigt eventuell Adminstrator Rechte
[/autoit] [autoit][/autoit] [autoit]
#ce$sSavePath = FileSelectFolder("Wohin mit der Datei?", "", 2) ; In welchen Ordner soll die Datei
[/autoit]
FileInstall("Pfad der Datei die in die .exe eingebunden werden soll", $sSavePath, 1) ; Datei beim kompilieren einbinden und beim Ausführen wieder entpacken
If Not FileExists($sSavePath) Then MsgBox(16, "Error", "Datei konnte nicht erstellt werden") ; Wenn die Datei nicht entpackt werden konnte dann Fehler anzeigen