Entwickler-Ecke
Windows API - SHFILEOPSTRUCT hWnd
goCM - Mo 04.08.08 00:25
Titel: SHFILEOPSTRUCT hWnd
Wie gebe ich den Ort an, wo ich den Windows Dialog mit hWnd ausgebe ?
Bzw. könnte ich den Dialog zum Beispiel auf einem Element meines Programms ausgeben ?
Das trivial aus der msdn hilft mir nicht weiter ^^
Moderiert von
Narses: Topic aus Dateizugriff verschoben am Mo 04.08.2008 um 00:31
Danke für das Verschieben, ich versuche zwar den Dateizugriff, doch handelt es sich ja um einen Aufruf der Windows Api.
Delete - Mo 04.08.08 21:56
Titel: Re: SHFILEOPSTRUCT hWnd
goCM hat folgendes geschrieben: |
Wie gebe ich den Ort an, wo ich den Windows Dialog mit hWnd ausgebe ?
Bzw. könnte ich den Dialog zum Beispiel auf einem Element meines Programms ausgeben ? |
Könntest du dir mal bitte die Mühe machen und dein Problem mal etwas verständlicher und ausführlicher zu beschreiben?
goCM - Di 05.08.08 21:55
Entschuldige bitte, also eine ausführliche Beschreibung meiner Frage:
1)
Wenn ich mit SHFILEOPSTRUCT (FO_COPY) Ordner kopieren will, taucht ja standartmässig erstmal der Windowsdialog auf.
Diesen finde ich nicht so schick und deshalb unterdrücke ich ihn mit fFlags FOF_SILENT.
Es wäre aber schön, wenn ich die Rückgabewerte des eigentlichen Windowsdialog in mein Programm einspielen könnte.
Die Namen der gerade kopierten Daten auf ein Label und den Fortschrittsbalken des Windowsdialog, auf einen Fortschrittsbalken in meinem Programm.
-----
2)
Desweiteren taucht die Frage auf, ob man Dateien auch excluden kann.
Wenn ich zB. meine Benutzerdaten kopieren will und C:\Dokumente und Einstellungen\Mein Benutzername als zu kopierenden Ordner auswählen würde, hätte ich ja unter anderem ein Problem mit NTUSER.dat. Da die Datei durch den exclusiven Zugriff nicht kopiert werden kann, bricht das Programm dann mit der entsprechenden Fehlermeldung ab.
Kann ich entweder Dateien im Vorfeld excluden oder kann man die Fehlermeldung unterdrücken und den Kopiervorgang weiterführen ?
Delete - Di 05.08.08 22:39
Warum nicht gleich so?
Nein die ausgabe kannst du nicht abfangen. Wenn du Dateien mit Fortschritt kopieren willst, dann nimm CopyFileEx ->
http://www.michael-puff.de/Developer/Delphi/Code-Snippets/
Und ausschliessen kann man auch keine Dateien. Warum auch, du musst ja die Dateien angeben, die du kopieren willst, dann lass die Dateien weg, die du nicht kopieren willst.
goCM - Di 05.08.08 23:33
Es wäre so praktisch gewesen.
Bisher hab ich ja den Ordner angegeben und alles wurde inclusive der Unterordner und Dateien kopiert.
In Zukunft muß ich ja wahrscheinlich wie folgt vorgehen:
- Ordner und Unterordner nach Dateien durchsuchen und die Pfade zwischenspeichern
- Nicht erwünschte Dateien excluden
- und dann das normale Kopieren der Dateien mit Progressbar
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!