Autor Beitrag
goCM
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 18



BeitragVerfasst: Mo 04.08.08 00:25 
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 user profile iconNarses: 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.
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mo 04.08.08 21:56 
user profile icongoCM 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 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 18



BeitragVerfasst: 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 ?
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: 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 -> www.michael-puff.de/...elphi/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 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 18



BeitragVerfasst: 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