Wow, genauso hatte ich mir das vorgestellt. Jetzt läuft es perfekt. Und ja genau, die Consolenauskunft hilft mir nicht so viel als Exe. Nochmals vielen Dank SOLVE-SMART!
Beiträge von o0Julia0o
-
-
Danke! Vielleicht kannste das auch noch am Montag beantworten:
bedeutet, wenn er den Quellordner nicht findet. Aber die Then-Sache wird gar nicht ausgeführt, wenn ich eine Messagebox so ergänze:
CodeLocal Const $aFolderMatch = StringRegExp($sSourceFolder, "([^\\]+)$", 1) If @error Or Not IsArray($aFolderMatch) Then ConsoleWrite('Oops! Handle this unexpected behavior.' & @CRLF) MsgBox(0, "Fehler", "Der Quellordner existiert nicht: " & $sourceFolder) Return
Das mit dem Ordner auswählen klappt nicht wirklich zuverässig. Ich muss oft den Ordnernamen angklicken, damit es klappt. Also den targed-folder. Wenn ich IN den targed-folder klicke, klappt das script nur selten. Wobei ich genau das eigentlich nur so nutze. Habe es gerade >20x hintereinander probiert. Klappt nicht.
-
was nutzt du da für ein Tool überhaupt, wo man unten sehen kann, Output, debugging, terminal?
Ich kann nicht unter Bildern Text schreiben, daher neuer Post. Jetzt funktioniert das auch, wenn ich einfach in den Zielordner geklickt habe. Supi!
freu!
Vermutlich hatte ich das Script nicht aktiv? Sobald man auf das icon rechts- oder linksklickt kommt das rote Symbol blinkend, dass das Scritp nicht aktiv ist. Das Häkchen davor spielt aber keine Rolle. Von daher komme ich damit immer durcheinander, ob ein Script gerade aktiv ist oder nicht.
-
wow, danke Dir! Also ja, genau so soll es stattfinden. Habe ich auch so probiert. Hat nicht funktioniert. Wobei ich grundsätzlich lieber in den Ornder klicke mit der Maus, und nicht auf den Ordnernamen. Habe es nochmal getestet, jetzt funktioniert es bei Klick auf den Ordnernamen. Aber ich möchte ja in das Fenster klicken, das ist im Alltag deutlich schneller und einfacher:
-
Danke, warum finde ich da nirgends: GetSelectedFolder beschrieben?
Stehen sonderfunktionen in Bibliotheken?
Ist File.au3 eine solche?
-
hi, wo finde ich eine Liste über alle Funktionen und Befehle?
Sind das alle Funktionen?
Wo über alle Libaries?
lieben Dank!
-
- Drücke Tastenkombi. STRG+ALT+G.
- Schaue dir den Ordner C:\tmp\target-folder\#Im genau an. Es sollten statt "3 Dateien, 2 Ordner" nun "9 Dateien, 2 Ordner" in den Ordnereigenschaften zu sehen sein.
- Schaue dir die bearbeitete Datei an, diese hat deinen neuen Text und wurde nicht überschrieben.
Danke! Ich habe die ganzen Schritte so ausgeführt. Also Strg + G sollte ja reichen. Nein, es bleibt bei 3 Dateien, 2 Ordner. Der Text wurde nicht überschrieben.
Aber es liegt daran, dass nichts geschrieben wurde, sehe ich ja an dem Ordnerdatum.
Den Ordner, wo der #Im-Ordner hineinkopiert werden soll, dort habe ich mit der linken Maustaste einmal hineingeklickt oder bin dort hineingetabbt. Also nicht auf die URL oder den Ordnernamen an sich(habe ich auch mal testweise gemacht, tat ber auch nicht).
Wenn kein #Im-Ordner vorhanden ist, soll dieser halt erstellt werden bzw. ja vom Quellordner genommen werden. Im #Im-Ornder soll nichts überschrieben werden. Nur ergäntzt, was im Quell-#Im-Ordner vorhanden ist und im Ziel-#Im-Ornder nicht.
-
Danke! Habe es jetzt mal ausgeteste und es passiert einfach nichts, wenn ich strg + alt + g drücke. Und der Quellpfad ist vorhanden und er enthält auch Dateien: E:\Info\#Im
Ich habe es aus AutoIt und mit compilierter exe probiert. Ich wähle einen Ordner an und drücke den Shortcut. Nichts passiert.
-
Hi und willkommen im Forum o0Julia0o 👋 .
Was meinst du mit aktuell angewählt? Sprichst du vom Windows Explorer den du offen hast?
Dort bist du mit der Maus auf irgend einem Ordner und möchtest in diesen per Hotkey den "#Im" Ordner samt Inhalt kopieren?
Richtig soweit? Denn so etwa sieht dein Code (KI generiert sicherlich) aus.Aber warum 🤔 ? Weißt du nicht sowieso von welchen Ordner du in welchen Ordner kopieren möchtest? Also ich verstehe nicht was dir das Skript bringt, wenn du einfach per Windows Explorer copy und paste genau dies auch machen kannst? Da wirst du doch gefragt ob du die bereits vorhandenen Dateien überschreiben willst oder nicht.
Mal anders gefragt:
Wie häufig möchtest du dies etwa ausführen, für wie viel verschiedene Ordner (sonst brauchst du den Hotkey ja auch nicht)?Ja exakt. Den Ordner wo ich mit der Maus im Windows Explorer gerade reingeklickt habe. Dann drücke ich den shortcut und der Ordner wird mir kopiert. Ich kenne den Ort wovon ich kopieren möchte, aber ich muss dann nicht erst dorthin navigieren und den Ordner markieren und kopieren auswählen. Es spart halt viel Zeit, da das öfter vorkokmmt. Ich starte das script dann, per compilierter script-exe. Und danach nutze ich das dann halt häufig. Aber zwischendrin landen andere Dinge in der Zwischenablage. Daher der Hotkey. Und vielen Dank. Ich habe nur Mittagspause, wollte nur eben schonmal antworten.
-
hi, ich möchte den Ordner: E:\Info\#Im in den Ordner kopieren, den ich aktuell angewählt habe. Der Inhalt vom Ordner E:\Info\#Im soll natürlich mit kopiert werden. Und falls im aktuell ausgewählem Ordner bereits ein Ordner #Im existiert soll dessen Inhalt nur überschrieben werden mit den Dateien die noch fehlen im Vergleich zum Quellordnerinhalt: E:\Info\#Im. Das ganze soll mit dem hotkey strg+alt+g passieren. So klappt es schonmal nicht ;):
AutoIt
Alles anzeigen#include <File.au3> ; Definiere den absoluten Pfad für den Quellordner Local $sourceFolder = "E:\Info\#Im" ; Ändere diesen Pfad auf den absoluten Pfad des #Im-Ordners ; Setze den Hotkey Strg + Alt + G HotKeySet("^!g", "CopyFilesHotkey") ; Halte das Skript am Laufen, bis der Benutzer es beendet While 1 Sleep(100) ; Warte in einer Schleife WEnd Func CopyFilesHotkey() ; Überprüfen, ob ein Zielordner ausgewählt ist Local $targetFolder = GetSelectedFolder() If $targetFolder = "" Then MsgBox(0, "Fehler", "Kein Zielordner ausgewählt oder der ausgewählte Ordner ist ungültig.") Return EndIf ; Überprüfen, ob der Quellordner existiert If Not FileExists($sourceFolder) Then MsgBox(0, "Fehler", "Der Quellordner existiert nicht: " & $sourceFolder) Return EndIf ; Überprüfen, ob der Zielordner bereits existiert If Not FileExists($targetFolder) Then ; Wenn der Zielordner nicht existiert, erstelle ihn DirCreate($targetFolder) EndIf ; Kopiere den #Im-Ordner in den ausgewählten Zielordner Local $targetImFolder = $targetFolder & "\#Im" FileCopy($sourceFolder, $targetImFolder, 1) ; 1 = Überschreibe, wenn der Ordner bereits existiert EndFunc ;==>CopyFilesHotkey Func GetSelectedFolder() Local $hWnd = WinGetHandle("[ACTIVE]") ; Aktives Fenster ermitteln If Not IsHWnd($hWnd) Then Return "" ; Simuliere das Drücken von Strg + C, um den Pfad des ausgewählten Ordners in die Zwischenablage zu kopieren Send("^{c}") Sleep(100) ; Warten, um sicherzustellen, dass der Pfad kopiert wurde ; Lese den Inhalt der Zwischenablage Local $clipboardContent = ClipGet() If StringLen($clipboardContent) > 0 Then Return StringTrimRight($clipboardContent, 1) ; Trim newline character EndIf Return "" EndFunc ;==>GetSelectedFolder
Wie geht das richtig?