Beiträge von 4ern
-
-
Hier ist ein AutoIt Webserver.
https://www.autoitscript.com/forum/topic/68…in-pure-autoit/Schau dir das an, dadurch lernst so ziemlich alles was du wissen möchtest.
-
-
@Oscar vielen vielen Dank, dass mit dem #prgama ist neu für mich. Einfach Klasse !!!!
-
@Oscar vielen Dank für deine Lösung. Diese Lösung hatte ich bereits hier im Forum durch die SUFU gefunden. Jedoch funktioniert diese ohne die AutoIt exe nicht. Demnach müsste ich der kompilierten Variante diese immer mit geben.
Ich habe es geschafft ein Loop mit einer Ebene, jedoch befürchte ich, dass sich noch viele unvorhersehbare Fehler einschleichen könnten
Ich denke ich werde Oscars Lösung favorisieren und binde die AutoIt exe als File Install oder ähnliches in das compilierte Script ein.Meine Lösung:
AutoIt
Alles anzeigen$file = FileRead(@scriptdir & '\test.txt') _loop($file) func _loop(byRef $file) Local $iEbene = 1 ;----------------------------------------------------------------------------------------------/ ; Ermittle wieviele Ebenen die Schleife hat ;----------------------------------------------------------------------------------------------/ $regEx = StringRegExp($file, '(?s)@for(.*?)@next',2) if @error then return ;----------------------------------------------------------------------------------------------/ ; Ermittle die Ebenen Anzahl ;----------------------------------------------------------------------------------------------/ StringReplace($regEx[0], '@for', '@for') $iEbene = @extended ;----------------------------------------------------------------------------------------------/ ; Ersetze String & Setze Markierung ;----------------------------------------------------------------------------------------------/ $file = StringReplace($file, $regEx[0], '{!!INSERT_LOOP!!}') ;----------------------------------------------------------------------------------------------/ ; Eine Ebene ;----------------------------------------------------------------------------------------------/ if $iEbene = 1 then ;----------------------------------------------------------------------------------------------/ ; Ermittle Loop Parameter ;----------------------------------------------------------------------------------------------/ $aExp = StringSplit((StringRegExp($regEx[0], '(?s)\((.*?)\)',2))[1], ' ',2) $string = (StringRegExp($regEx[0], '(?s)\)(.*?)@next',2))[1] ;----------------------------------------------------------------------------------------------/ ; Prüfe ob $var im String vorhanden ist. ;----------------------------------------------------------------------------------------------/ $string = StringReplace($string, '{! '&$aExp[0]&' !}', '@var') ;----------------------------------------------------------------------------------------------/ ; Führe Loop aus ;----------------------------------------------------------------------------------------------/ $file = StringReplace($file, '{!!INSERT_LOOP!!}', _loop_ebene1(StringStripWS($string, 3), $aExp[2], $aExp[4])) ConsoleWrite('@@@ Debug line #49' & ' var: $file --> ' & $file & @CRLF) endif endfunc func _loop_ebene1($string, $start, $stop) Local $newString for $i = int($start) to int($stop) $newString &= StringReplace($string, '@var', $i) next return $newString endfunc
-
@Kanashius vielen Dank für dein Feedback. Die Eindeutigen Begrenzugen hab ich "@for' jedoch mit eval kann ich nur eine Variable ansprechen mehr nicht
-
Hallo zusammen,
ich benötige wieder mal eure Hilfe Ich versuche gerade verzweifelt eine Art Dynamische Schleife in AutoIt zu realisieren, jedoch scheitere ich kläglich schon allein bei den Überlegungen, wie ich das anstellen soll .
Diese Art von Schleife benötige ich, da ich in Text Dokumenten einfache Befehle einbauen will, welche von AutoIt ausgewertet werden soll.Beispiel:
Code
Alles anzeigenLorem ipsum dolor sit amet, consetetnonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. @for ($i = 0 to 10) {! $i !} - Einfache Schleife @next Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Deros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi. @for ($i = 0 to 10) @for ($n = 0 to 10) {! $i !}:{! $n!} - Verschachtelte Schleife @next @next
Es soll so eine Art Template System werden, dass dann später auch Compiliert funktionieren soll. Ich denke es sollte mit unzähligen String Operationen Möglich sein und wahrscheinlich müsste ich Assign einsetzen.
Ich werde selbstverständlich meine Fortschritte hier posten.Ich bin über jede Idee oder gar Lösung sehr Dankbar!!!
-
Hey @Bitnugger habe die UDF in Version getestet, läuft einwandfrei.
Die Aktuelle Versionen findest du hier: -
Versuchs mal mit https://autoit.de/onlinehilfe/functions/ControlCommand.htm / selectstring
-
@S3cret Tolle Arbeit !!! Danke für's teilen.
-
-
Les den window Titel aus...
-
Ich bin überglücklich mit meiner MVC Struktur.
Evtl was für dich... -
Geb mal der Startup Funktion den Pfad der dll Datei mit.
-
Versuch mal den sleep auf 1000 zu erhöhen ob es daran liegt?
-
Aktuell hast du ein Client geschrieben... Nun brauchst du noch ein Server ...
Schau dir hierzu die Hilfe an.
Oder schau dir meine overmind udf an, diese basiert auf udp.
-
Versuch mal für jeden SQL Befehl ein eigenes exec. Hatte auch mal Probleme, das er das gebündelt nicht macht...
-
Versuch mal winsetstate auf sichtbar und setzt anschließend ein Focus auf ein handle im Fenster. Ansonsten könntest du noch versuchen über winapi Befehle das zu aktivieren.
-
Deine gui hat kein endfunc.. Und was soll das Script genau bewirken ??? Aktuell wie es da steht macht es garnichts ...
-
-
Mach einfach Filewrite ohne fileopen und fileclose
Filewrite('Datei Pfad','123')