 |
AutoHotkey Community Wir helfen uns gegenseitig aus der Patsche
|
| Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
| Autor |
Nachricht |
Jochen
Anmeldedatum: 30.01.2008 Beiträge: 114
|
Verfasst am: Di Jun 17, 2008 1:52 pm Titel: Progress-Bar für Verzeichniskopie |
|
|
Moin!
Ahh, ich bin zu blöd!
Ich möchte ein Verzeichnis mit Unterverzeichnissen aus einem bestimmten, festen Pfad in einen anderen Pfad kopieren und das Ganze mit untenstehendem Progress-Button illustrieren.
| Code: |
IfExist, C:\WINDOWS\system32\ntimage.gif, SplashImage, %A_WinDir%\system32\ntimage.gif, A,,, Installation
Loop, %A_WinDir%\system32\*.*
{
Progress, %a_index%, %a_loopfilename%, Installing..., Draft Installation
Sleep, 50
if a_index = 100
break
}
|
Ich habe nun schon hin und her probiert, kann auch die Ordnergröße und den freien Speicherplatz bestimmen, aber ich schaffe es einfach nicht, die gewünschte Funktion zu erstellen.
Andere im Forum genannten Skripts nutzen eine GUI, die aber z.B. unter Win2000 nicht funktionsfähig ist.
O.g. Skript gefiel mir deswegen, weil es eben unter (glaub´ ich) allen Betriebssystemen funkt und dem Windowsbalken recht nah kommt.
Kann mir jemand helfen?
Danke! _________________ Jochen |
|
| Nach oben |
|
 |
Jochen
Anmeldedatum: 30.01.2008 Beiträge: 114
|
Verfasst am: Di Jun 17, 2008 2:13 pm Titel: |
|
|
Ooops! Vergessen:
Die Progress bar sollte in Prozent der Gesamtkopie "vollaufen"! _________________ Jochen |
|
| Nach oben |
|
 |
BoBo² Gast
|
Verfasst am: Di Jun 17, 2008 2:52 pm Titel: |
|
|
| Na im Prinzip solltest du beim Loopen die Größe der Zieldatei im Zielverzeichnis abfragen und mit der Größe der Originaldatei im Quellverzeichnis mathematisch verhackstücken können. Frei nach Adam Riese & Eva Zwerg solltest du damit fortlaufend den Wert ermitteln, welchen du dann an Stelle des Schleifenzählers (A_Index) anzeigen läßt. It's that simple! |
|
| Nach oben |
|
 |
denick (n-l-i) Gast
|
Verfasst am: Di Jun 17, 2008 3:09 pm Titel: |
|
|
Moin,
zweimal loopen oder Wert für Range anders bestimmen:
| Code: | #NoEnv
Gesamt := 0
Loop, %A_WinDir%\system32\*.*
{
Gesamt += A_LoopFileSizeKB
}
Bisher := 0
Progress, R0-%Gesamt%, %A_Space%, Installing..., Draft Installation
Loop, %A_WinDir%\system32\*.*
{
Bisher += A_LoopFileSizeKB
Progress, %Bisher%, %A_LoopFileName%
Sleep, 50
}
Progress, Off
ExitApp |
|
|
| Nach oben |
|
 |
Jochen
Anmeldedatum: 30.01.2008 Beiträge: 114
|
Verfasst am: Di Jun 17, 2008 3:55 pm Titel: |
|
|
Hi Nick,
das sieht schon sehr gut aus!
Wo in dem Skript versteckt sich das Zeilverzeichnis?
Das Quellverzeichnis ist %A_WinDir%\system32\*.*, schon klar. _________________ Jochen |
|
| Nach oben |
|
 |
denick (n-l-i) Gast
|
Verfasst am: Di Jun 17, 2008 4:23 pm Titel: |
|
|
Moin,
da gibt und gab es kein Zielverzeichnis, es ist nur eine Simulation. Sie wird noch realistischer, wenn Du für den Sleep in der Schleife %A_LoopFileSizeKB% wählst.  |
|
| Nach oben |
|
 |
Jochen
Anmeldedatum: 30.01.2008 Beiträge: 114
|
Verfasst am: Di Jun 17, 2008 4:40 pm Titel: |
|
|
Hi nick,
Ahja. hmmnnngrummel, aber wo füg ich das Zielverzeichnis ein?
Ich versinke im Boden , aber ich hab mich echt schon den Morgen damit beschäftigt und gesucht.
 _________________ Jochen |
|
| Nach oben |
|
 |
BoBo² Gast
|
Verfasst am: Di Jun 17, 2008 5:06 pm Titel: |
|
|
| Zitat: | | aber wo füg ich das Zielverzeichnis ein? | Im FileCopy-Befehl. |
|
| Nach oben |
|
 |
Jochen
Anmeldedatum: 30.01.2008 Beiträge: 114
|
Verfasst am: Di Jun 17, 2008 6:17 pm Titel: |
|
|
Bobo:
Moment mal:
Wie kann denn das Skript den Kopierfortschritt anzeigen, wenn es die Quell- und Zielverzeichnis nicht vergleicht?
Wenn ich das jetzt richtig verstehe, ist das nur ein Dummy, der mit dem Fortschritt der richtigen Kopien garnichts zu tun hat.
Der sieht zwar schön aus, gibt ja aber keine korrekten Informationen. _________________ Jochen |
|
| Nach oben |
|
 |
Z Gecko Gast
|
Verfasst am: Mi Jun 18, 2008 12:18 am Titel: |
|
|
| Zitat: | Wenn ich das jetzt richtig verstehe, ist das nur ein Dummy, der mit dem Fortschritt der richtigen Kopien garnichts zu tun hat.
| Nein, man muß nur noch das FileCopy hinzufügen:
| Code: | #NoEnv
StartVerzeichnis = C:\MeinStart
Zielverzeichnis = C:\MeinZiel
Gesamt := 0
Loop, %StartVerzeichnis%\*.*
{
Gesamt += A_LoopFileSizeKB
}
Bisher := 0
Progress, R0-%Gesamt%, %A_Space%, Installing..., Draft Installation
Loop, %StartVerzeichnis%\*.*
{
Bisher += A_LoopFileSizeKB
Progress, %Bisher%, %A_LoopFileFullPath%
FileCopy, %A_LoopFileFullPath%, %Zielverzeichnis%\
}
Progress, Off
ExitApp |
|
|
| Nach oben |
|
 |
fredchf
Anmeldedatum: 18.09.2006 Beiträge: 685 Wohnort: Deutschland
|
Verfasst am: Mi Jun 18, 2008 5:19 am Titel: |
|
|
hallo jochen,
vielleicht etwas fertiges gefällig?
kopiert in eine richtung _________________ Mit freundlichen Grüßen
fredchf |
|
| Nach oben |
|
 |
Jochen
Anmeldedatum: 30.01.2008 Beiträge: 114
|
Verfasst am: Mi Jul 02, 2008 7:03 am Titel: |
|
|
Bitte um Entschuldiung, ich habe mich noch gar nicht bedankt!
Das sei hiermit nachgeholt Danke!!!
@Z Gecko: Ich werde auf Dein Skript aufbauen. Nochmals vielen Dank! _________________ Jochen |
|
| Nach oben |
|
 |
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten.
|
Powered by phpBB © 2001, 2005 phpBB Group Deutsche Übersetzung von phpBB.de
|