Dateien zeitversetzt öffnen

Forum zur Erstellung von Anwendungen der erweiterten Scripting-Funktion
Info: Diese Schalter und Script-Anwendungen funktionieren erst ab der Version 11
Antworten
Benutzeravatar
Kundal
Moderator
Beiträge: 1337
Registriert: 20. Apr 2010 21:26
Betriebssystem: Win7 & Win 10 Pro 64 bit
Produkt: DOpus 12 x64 - Letzte Betaversion
Version DOpus: Pro

Dateien zeitversetzt öffnen

Beitrag von Kundal » 11. Feb 2014 23:26

Dieser VB-Script Schaltercode basiert auf einem Schalter, den ich im Beitrag Dateien Zeitversetzt nacheinander öffnen für das Forumsmitglied redfrog erstellt habe.
Während der dort vorgestellte Schalter im MS-DOS Batch-Modus auch unter DOpus 10 funktioniert, ist der hier vorgestellte VB-Script-Schalter nur unter DOpus11 lauffähig.
Nach dem Einfügen des Codes Im Befehlseditor muss mit der Schaltfläche Funktion: die neue Option Scriptfunktion gewählt werden.

Der Schalter wählt zunächst alle Textdateien im aktiven Ordner aus und versteckt alle anderen Dateitypen. Danach öffnet sich eine Dialogbox in der ein Range von Dateien ausgewählt werden kann (im Beispiel 1-3 oder 4-6 oder 7-9). Die gewählten 3 Dateien werden dann zeitversetzt im Abstand von 2 Sekunden mit Notepad geöffnet.

Zum Script-Code:
- In Zeile 1 wird eine Funktion definiert, die bei Klick auf einen Schalter ausgeführt wird.
- In Zeile 2 und 3 können die Auswahl-Befehle angepasst werden (z.B. anderen Dateityp wählen oder Range-Auswahl editieren). Dort könnten natürlich auch weitere DOpus-Standardbefehle nach dem gleichen Muster angehängt werden. Die beiden Zeilen können auch gelöscht werden, um den Schalter auf die Basisfunktion zu reduzieren. Es werden dann einfach alle ausgewählten Dateien an Notepad übergeben.
- In Zeile 4 wird eine For-Schleife gestartet, die auf die ausgewählten Dateien angewendet wird.
- In Zeile 5 wird der Pfad einer einzelnen Datei aus der Auswahl als Variable FP gesetzt. Notepad kann diese Variable dann in Zeile 7 als {$glob:FP} auslesen.
- In Zeile 6 wird der Zeitversatz in Millisekunden (hier 2000=2 Sekunden) definiert.
- In Zeile 7 wird die Datei mit Hilfe der oben definierten Variable an Notepad.exe übergeben. Hier könnte auch jedes andere Programm, das einen Dateipfad als Argument akzeptiert, eingesetzt werden (vollständigen Pfad zur EXE-Datei angeben).
- In Zeile 8 startet next die Schleife für die nächste Datei von Neuem.
- In Zeile 9 wird die Funktion beendet, nachdem die Schleife für alle ausgewählten Dateien durchlaufen wurde.

Textdateien zeitversetzt (2 Sekunden) mit Notepad öffnen

Code: Alles auswählen

Function OnClick(ByRef ClickData)
      ClickData.Func.Command.RunCommand "Select *.txt HIDEUNSEL"
      ClickData.Func.Command.RunCommand "Select RANGE {dlgchoose|Range wählen:|1-3=1-3+4-6=4-6+7-9=7-9}"
For each file in ClickData.Func.Command.files
      DOpus.vars.Set "FP", File
      DOpus.delay "2000" 
   ClickData.Func.Command.RunCommand("notepad.exe {$glob:FP}")
next
End Function

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste