Hallo. Wenn ich angenommen zehn Dateien in einem Verzeichnis habe und davon fünf markiere, möchte ich auf die fünf markierten Dateien eine Aktion anwenden. Meinetwegen umbennen, Atribut verändern oder verschieben etc. Wie bekomme ich diese Mehrfachauswahl nun in ein Array, geht das überhaupt?
Aktion auf markierte Dateien anwenden
-
- [ gelöst ]
-
Scritch -
23. Oktober 2012 um 10:32 -
Geschlossen -
Erledigt
-
-
Die einfachste Lösung: ziehe sie mt der Maus auf ein AutoItprogramm das Dropaktionen erkennt. Du kannst dir dazu meinen MP3-Player anschauen.
mfg autoBert
-
Hallo. Danke für deine Antwort. An die Möglichkeit habe ich auch schon gedacht. Wäre aber nur eine Notlösung. Ich suche nicht nach dem einfachsten Ergebnis das zu programmieren, sondern nach der einfachsten Bedienung
Später möchte das nicht ich benutzen, sondern es werden irgendwelchen unbedarften User benutzen sollen, die durch eine einfache Methodik, also quasi mit einem Hotkey, Dateien makieren sollen, die z. B. von einem Löschlauf verschon bleiben. Und da ist die Drag n' Drop Methode nicht die optimalste wenn die User noch wieder mit einer GUI konfrontiert werden
-
So funktioniert es wenigstens schonmal ansatzweise:
[autoit]HotKeySet("{F5}", "test")
[/autoit][autoit][/autoit][autoit]while 1
[/autoit][autoit][/autoit][autoit]
sleep(100)
WEndFunc test()
[/autoit]
send("^c")
sleep(300)
Local $bak = ClipGet()
MsgBox(0, "Clipboard contains:", $bak)
;~ Exit
EndFuncWenn allerdings mehrere Dateien markiert werden, dauert es entsprechend länger diese der Zwischenablage hinzuzufügen. Länger als 300ms. Ggf. kann man den Wert noch dynamisch anpassen, wenn sich keine andere bessere Lösung findet.
-
- Offizieller Beitrag
[autoit]Func test()
[/autoit]
ClipPut("")
send("^c")
While ClipGet() == ""
sleep(50)
WEnd
Local $bak = ClipGet()
MsgBox(0, "Clipboard contains:", $bak)
;~ Exit
EndFuncSo in der Art?
-
Klasse Idee, danke. Ich hätte jetzt gedacht dass die in die Zwischenablage zu kopierenden Dateien eine nach der anderen in der Zwischenablage auf taucht. Aber dem scheint ja nicht so zu sein So ists perfekt, danke.
-
- Offizieller Beitrag
Bitte, bitte. Das ganze wäre ja noch langsamer, wenn Windows jede Datei einzeln da reinpfrimeln würde und außerdem eben das Ende nicht feststellbar. So ist das schon ganz hübsch ;).
Zumindest für Textinhalte könnte man den alten Inhalt der Zwischenablage noch sichern und wiederherstellen, mancher User wundert sich sonst…Johannes
-
Hi,
ZitatIch suche nicht nach dem einfachsten Ergebnis das zu programmieren, sondern nach der einfachsten Bedienung
Dateien markieren, rechtsklick, und dein Programm anklicken (das dann natürlich ins Explorer-Kontextmenü muss^^, was aber kein Problem darstellt ).
Geht ohne Hotkey (den du tunlichst vor jeder "Datei Markieren"-Aktion ausschalten solltest! ) und macht den geringsten Aufwand.
Weiterhin kannst du im Kontextmenu dein Programm ans "Senden an" anfügen. Das ist der SENDTO-Ordner im Verzeichnis C:\Dokumente und Einstellungen\Administrator(oder der Username)\SendTo
Die übergebenen Dateien lassen sich in AutoIt in $cmdline[] auslesen -
Zumindest für Textinhalte könnte man den alten Inhalt der Zwischenablage noch sichern und wiederherstellen, mancher User wundert sich sonst…
Nette Idee, aber den Komfort für den user lasse ich mal aus Ich unterstelle denen sowieso jetzt einfach mal, dass die wenigsten überhaupt mit der Zwischenablage arbeitenDateien markieren, rechtsklick, und dein Programm anklicken (das dann natürlich ins Explorer-Kontextmenü muss^^, was aber kein Problem darstellt ).
Geht ohne Hotkey (den du tunlichst vor jeder "Datei Markieren"-Aktion ausschalten solltest! ) und macht den geringsten Aufwand.
Weiterhin kannst du im Kontextmenu dein Programm ans "Senden an" anfügen. Das ist der SENDTO-Ordner im Verzeichnis C:\Dokumente und Einstellungen\Administrator(oder der Username)\SendTo
Die übergebenen Dateien lassen sich in AutoIt in $cmdline[] auslesen
Ehrlich gesagt weiß ich nicht genau was genau du mir mitteilen möchtest Wieso Programm im Kontextmenü? Wieso "Senden an..."? Und wieso den Hotkey nach jeder Markieraktion ausschalten? Der Benutzer soll Dateien markieren und einmal den Hotkey drücken... und nicht gedrückt halten. -
Und wieso den Hotkey nach jeder Markieraktion ausschalten?
(den du tunlichst vor jeder "Datei Markieren"-Aktion ausschalten solltest! )