Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Wo speichert Windows den Pfad? (https://www.delphipraxis.net/177610-wo-speichert-windows-den-pfad.html)

greenmile 15. Nov 2013 16:16

Wo speichert Windows den Pfad?
 
Hallo,

wenn ich im OpenDialog/SaveDialog kein InitialDir vorgebe, dann startet Windows die Auswahl im zuletzt ausgewählten Ordner (wenn ich ihn schonmal aufgerufen habe). Wo werden diese Informationen gespeichert? Ich möchte sie gerne vorgeben, finde aber keinen Registry-Schlüssel. Ich habe schon einen Testordner erstellt (diesisteintest), diesen im Notepad geöffnet und dann in der Registry gesucht ... und nichts gefunden. Oder kann ich die von außen nicht vorgeben, also wenn die Anwendung nicht von mir stammt?

himitsu 15. Nov 2013 16:27

AW: Wo speichert Windows den Pfad?
 
Nach dem Programmneustart ist diese Einstellung immernoch da?

Wenn nicht, dann MSDN-Library durchsuchenGetCurrentDirectory. (PS: genau deswegen sollte man auch immer nur mit absoluten Pfaden arbeiten)

Popov 15. Nov 2013 16:56

AW: Wo speichert Windows den Pfad?
 
Hat zwar nichts mit der Frage zu tun, aber ich hab auch mal eine Frage zu Dialogfenster gehabt. Die Lösung war letztendlich eine Message. Vielleicht ist es bei dir etwas ähnliches: http://www.delphipraxis.net/172365-d...g-aendern.html

Helmi 15. Nov 2013 16:57

AW: Wo speichert Windows den Pfad?
 
Zitat:

Zitat von greenmile (Beitrag 1236161)
Ich möchte sie gerne vorgeben, finde aber keinen Registry-Schlüssel.

Aber hierfür ist doch InitialDir da - oder versteh ich grad was nicht?

jaenicke 15. Nov 2013 18:34

AW: Wo speichert Windows den Pfad?
 
Zitat:

Zitat von Helmi (Beitrag 1236169)
Aber hierfür ist doch InitialDir da - oder versteh ich grad was nicht?

Verstehen schon, aber du hast etwas übersehen:
Zitat:

Zitat von greenmile (Beitrag 1236161)
wenn die Anwendung nicht von mir stammt?

// EDIT:
Ok, hab kurz mal den Process Monitor bemüht. Das sieht für mich unter dem Schlüssel so aus:
Code:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32

Helmi 15. Nov 2013 18:42

AW: Wo speichert Windows den Pfad?
 
ok sorry
hab den Nebensatz überlesen

Perlsau 15. Nov 2013 21:20

AW: Wo speichert Windows den Pfad?
 
Zitat:

Zitat von greenmile (Beitrag 1236161)
Hallo,

wenn ich im OpenDialog/SaveDialog kein InitialDir vorgebe, dann startet Windows die Auswahl im zuletzt ausgewählten Ordner (wenn ich ihn schonmal aufgerufen habe). Wo werden diese Informationen gespeichert? Ich möchte sie gerne vorgeben, finde aber keinen Registry-Schlüssel. Ich habe schon einen Testordner erstellt (diesisteintest), diesen im Notepad geöffnet und dann in der Registry gesucht ... und nichts gefunden. Oder kann ich die von außen nicht vorgeben, also wenn die Anwendung nicht von mir stammt?

Wieso möchtest du umständlich in die Registry eingreifen (etliche Zeilen Code), wenn du das Ziel, einen bestimmten Ordner zur Auswahl vorzugeben, doch auch mit InitialDir (eine Zeile Code) erreichst? Anschließend steht in der Registry sowieso der zuletzt ausgewählte Ordner drin. Und was meinst du mit "von außen vorgeben"?

Übrigens ist der "zuletzt ausgewählte Ordner" immer einer, den du "schonmal aufgerufen" hast.

jaenicke 15. Nov 2013 21:59

AW: Wo speichert Windows den Pfad?
 
Zitat:

Zitat von Perlsau (Beitrag 1236185)
Zitat:

Zitat von greenmile (Beitrag 1236161)
[...]wenn die Anwendung nicht von mir stammt?

Wieso möchtest du umständlich in die Registry eingreifen (etliche Zeilen Code), wenn du das Ziel, einen bestimmten Ordner zur Auswahl vorzugeben, doch auch mit InitialDir (eine Zeile Code) erreichst?

Also die eine Zeile Code möchte ich sehen, mit der du in einer fremden Anwendung eine solche Eigenschaft eines Dialogs setzt. :shock:

himitsu 15. Nov 2013 22:16

AW: Wo speichert Windows den Pfad?
 
Ein API-Hook und beim Laden des Dialogs wird dann der Pfad gesetzt. :stupid:

Perlsau 16. Nov 2013 01:55

AW: Wo speichert Windows den Pfad?
 
Zitat:

Zitat von jaenicke (Beitrag 1236187)
Zitat:

Zitat von Perlsau (Beitrag 1236185)
Zitat:

Zitat von greenmile (Beitrag 1236161)
[...]wenn die Anwendung nicht von mir stammt?

Wieso möchtest du umständlich in die Registry eingreifen (etliche Zeilen Code), wenn du das Ziel, einen bestimmten Ordner zur Auswahl vorzugeben, doch auch mit InitialDir (eine Zeile Code) erreichst?

Also die eine Zeile Code möchte ich sehen, mit der du in einer fremden Anwendung eine solche Eigenschaft eines Dialogs setzt. :shock:

Für mich liest sich die Anfrage des TE so, daß er ein Projekt hat, das nicht von ihm stammt, und in dem er den Ordner beim OpenDialog festlegen möchte. Was ich dort nicht lesen kann, ist, daß es um die Steuerung einer Fremdanwendung ginge. Oder heißt "Anwendung, die nicht von mir stammt" automatisch "kompilierte Exe"? Man kann auch nicht davon ausgehen, daß man Quellcode immer nur von Anwendungen hat, die auch von einem selbst stammen. Ich bearbeite immer wieder mal Anwendungen, die nicht von mir stammen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:06 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz