| Autor |
Beitrag |
Dude566
      
Beiträge: 1592
Erhaltene Danke: 79
W8, W7 (Chrome, FF, IE)
Delphi XE2 Pro, Eclipse Juno, VS2012
|
Verfasst: Fr 05.06.09 13:09
Hallo,
ich wüsste gerne wie ich auf einfachem Wege den Pfad des Eigene Bilder Ordners finden kann, dem Benutzer meines Programmes soll dieser Ordner vorgeschlagen werden, deshalb sollte es auch auf jeder Windows Version funktionieren.
Habe auch brav gesucht, aber keine für mich verständliche oder brauchbare Variante gefunden.
Gruß Dude566
_________________ Es gibt 10 Gruppen von Menschen: diejenigen, die das Binärsystem verstehen, und die anderen.
|
|
Xabitire
      
Beiträge: 114
Win Xp, Win Vista
D6 PE, D7 PE
|
Verfasst: Fr 05.06.09 13:23
Das ist normalerweise in der Registry unter folgendem Schlüssel gespeichert!
Quelltext 1:
| HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders |
Mit freundlich Grüßen
Blackbird8690
_________________ What to do if you find yourself stuck with no hope of rescue. Consider how lucky you are that life has been good to you so far. Alternatively, if life hasn't been good to you so far, consider how lucky you are that it won't be troubling you much longer.
|
|
Dude566 
      
Beiträge: 1592
Erhaltene Danke: 79
W8, W7 (Chrome, FF, IE)
Delphi XE2 Pro, Eclipse Juno, VS2012
|
Verfasst: Fr 05.06.09 13:40
Wie kann ich denn einen Wert aus der Registry auslesen? Ist der Rückgabewert dann einfach ein String oder wie?
_________________ Es gibt 10 Gruppen von Menschen: diejenigen, die das Binärsystem verstehen, und die anderen.
|
|
Xentar
      
Beiträge: 2077
Erhaltene Danke: 2
Win XP
Delphi 5 Ent., Delphi 2007 Prof
|
Verfasst: Fr 05.06.09 13:44
Registry Tutorials gibts sicher genug. Stichwort TRegistry
Ob es ein String ist: Schau doch eben schnell im regedit nach..
Tipp: Ja, natürlich ist das ein String - in nen integer bekommst du ja keinen Pfad rein.
_________________ PROGRAMMER: A device for converting coffee into software.
|
|
Narses
      

Beiträge: 10185
Erhaltene Danke: 1261
W11x64
TP3 .. D7pro .. D10.2CE
|
Verfasst: Fr 05.06.09 13:47
Moin!
Nicht direkt auf die Registry zugreifen, da gibt´s ne API für: SHGETSPECIALFOLDERLOCATION
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
Dude566 
      
Beiträge: 1592
Erhaltene Danke: 79
W8, W7 (Chrome, FF, IE)
Delphi XE2 Pro, Eclipse Juno, VS2012
|
Verfasst: Fr 05.06.09 13:55
Ok mein Delphi sagt mir "Undefinierter Bezeichner: 'TRegistry'", was muss ich denn oben in die Uses schreiben?
_________________ Es gibt 10 Gruppen von Menschen: diejenigen, die das Binärsystem verstehen, und die anderen.
|
|
Xentar
      
Beiträge: 2077
Erhaltene Danke: 2
Win XP
Delphi 5 Ent., Delphi 2007 Prof
|
Verfasst: Fr 05.06.09 13:59
Sei doch mal etwas selbstständiger!
a) Tipp TRegistry in die Delphi Hilfe
b) Tipp TRegistry in die Suche hier im Forum.
beides sollte genug Ergebnisse liefern.
Aber die Methode von Narses ist in diesem Fall sauberer. War mir nur entfallen, wie die Funktion hieß.
_________________ PROGRAMMER: A device for converting coffee into software.
|
|
Dude566 
      
Beiträge: 1592
Erhaltene Danke: 79
W8, W7 (Chrome, FF, IE)
Delphi XE2 Pro, Eclipse Juno, VS2012
|
Verfasst: Fr 05.06.09 14:10
Scheint irgendwie "leer" zu sein der Schlüssel, steht nichts drin, also im Edit steht dann nichts mehr drin.
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17:
| procedure TMainForm.GetPathsClick(Sender: TObject); var registry: TRegistry; i: integer; key: string; begin registry:=TRegistry.Create; registry.rootKey:=HKEY_CURRENT_USER; registry.openkey('SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders',true); key:=registry.readstring('Schlüssel'); registry.free; Edit1.Text := key; end;
end. |
_________________ Es gibt 10 Gruppen von Menschen: diejenigen, die das Binärsystem verstehen, und die anderen.
|
|
Xentar
      
Beiträge: 2077
Erhaltene Danke: 2
Win XP
Delphi 5 Ent., Delphi 2007 Prof
|
Verfasst: Fr 05.06.09 14:13
Wie wärs, du schaust dir mal im Registrierungseditor (Start -> Ausführen -> regedit) an, wie der "Schlüssel" richtig heißt?
Und ich erwähne nochmal, dass die Methode von Narses sauberer ist.
_________________ PROGRAMMER: A device for converting coffee into software.
|
|
Narses
      

Beiträge: 10185
Erhaltene Danke: 1261
W11x64
TP3 .. D7pro .. D10.2CE
|
Verfasst: Fr 05.06.09 14:14
Moin!
War da irgendwas unklar dran?
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
Dude566 
      
Beiträge: 1592
Erhaltene Danke: 79
W8, W7 (Chrome, FF, IE)
Delphi XE2 Pro, Eclipse Juno, VS2012
|
Verfasst: Fr 05.06.09 14:23
Xentar hat folgendes geschrieben : |
|
Kein Grund mit dem Kopf gegen die Mauer zu rennnen.
Ich habe ihn kontrolliert, er heist komplett, also unter Vista64 (glaube nicht das es überall so ist): HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders\My Picutres
Aber ist immer noch nichts.
Wenns nicht klappt muss ich wohl die "bessere" Variante von Narses verwenden, wenn ich sie verstehen kann.
_________________ Es gibt 10 Gruppen von Menschen: diejenigen, die das Binärsystem verstehen, und die anderen.
|
|
Narses
      

Beiträge: 10185
Erhaltene Danke: 1261
W11x64
TP3 .. D7pro .. D10.2CE
|
Verfasst: Fr 05.06.09 14:32
Moin!
Dude566 hat folgendes geschrieben : | | Ich habe ihn kontrolliert, er heist komplett, also unter Vista64 (glaube nicht das es überall so ist): |
Genau das ist der Grund, NICHT auf die Registry zuzugreifen!
Dude566 hat folgendes geschrieben : | | Wenns nicht klappt muss ich wohl die "bessere" Variante von Narses verwenden, wenn ich sie verstehen kann. |
Du hast den FAQ-Eintrag gesehen?
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
Schmidt John
Hält's aus hier
Beiträge: 4
|
Verfasst: Mo 17.08.09 10:28
SHGetSpecialFolderLocation liefert unter Vista nicht immer einwandfrei die geforderten Werte zurück. In solchen Fällen ist die eigene Registry-Abfrage wohl besser... 
|
|
Xentar
      
Beiträge: 2077
Erhaltene Danke: 2
Win XP
Delphi 5 Ent., Delphi 2007 Prof
|
Verfasst: Mo 17.08.09 10:32
Schmidt John hat folgendes geschrieben : | | SHGetSpecialFolderLocation liefert unter Vista nicht immer einwandfrei die geforderten Werte zurück. |
Quelle?
Das wär nämlich schlecht, da dies eigentlich genau dafür gedacht ist..
_________________ PROGRAMMER: A device for converting coffee into software.
|
|
Tastaro
      
Beiträge: 414
Erhaltene Danke: 23
|
Verfasst: Mo 17.08.09 10:36
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Mo 17.08.09 11:00
|
|
Robert.Wachtel
      
Beiträge: 895
Erhaltene Danke: 7
Windows 7 Ultimate x64
D5 Ent, D7 Arch, RAD Studio 2010 Pro, VS 2008
|
Verfasst: Mo 17.08.09 11:35
|
|
BenBE
      
Beiträge: 8721
Erhaltene Danke: 191
Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
|
Verfasst: Mo 17.08.09 12:49
_________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
|
|