AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Liste von "Dieser PC" erhalten?

Ein Thema von MicMic · begonnen am 30. Okt 2019 · letzter Beitrag vom 31. Okt 2019
Antwort Antwort
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#1

AW: Liste von "Dieser PC" erhalten?

  Alt 30. Okt 2019, 15:10
also diese kauf komponente stellt dies alles bereit... jam-software /shellbrowser
ansonsten mach's wie oben beschrieben selber
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
3.038 Beiträge
 
Delphi 12 Athens
 
#2

AW: Liste von "Dieser PC" erhalten?

  Alt 30. Okt 2019, 17:15
Naja, der Shellbrowser benutzt die Explorer Umsetzung und zeigt damit genau das an,
was der Explorer anzeigt. Kann nützlich sein, muss aber nicht.
  Mit Zitat antworten Zitat
MicMic

Registriert seit: 26. Mai 2018
296 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#3

AW: Liste von "Dieser PC" erhalten?

  Alt 30. Okt 2019, 18:55
Naja, ich versuche keine Komponenten zu nutzen. Egal ob Kostenlos oder nicht. Versuche halt alles selbst zu machen, da man so auch besser lernt.
Mit der Registry ist's aber nicht so einfach. Es ist zwar leicht die Liste zu bekommen, also die CLSIDs aber von den bekannten Ordnern gibt's keine Beschreibung (z.B. 3D-Objekte). Habe versucht CLSIDs zu folgen aber irgendwo habe ich dann "3D-Objects" bekommen. Also kein Deutsch. Ich habe gesehen, dass bei manuellen benutzerdefinierten Einträgen, dazu im CLSID Abschnitt der Standard REG_SZ Wert genutzt wird. Also kann ich hier dies abfragen aber bei den bekannten Ordnern (3D-Objekte, Dokumente, Downloads, Musik etc.) ist dieser Standard REG_SZ leer.

Wenigstens bekomme ich mit:
Code:
SHGetKnownFolderPath(StringToGUID('{...CLSID-Wert...}'),0,0,Path);
das Verzeichnis. Jetzt fehlt mir nur noch der Name. Eigentlich noch das Icon dazu. Aber das Icon ist aus der Registry wohl wieder einfacher herauszulesen. Nur mit den Namen (3D-Objekte, Dokumente, Downloads, Musik etc.) weiß ich noch nicht genau wie.

Gruß Mic
  Mit Zitat antworten Zitat
MicMic

Registriert seit: 26. Mai 2018
296 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#4

AW: Liste von "Dieser PC" erhalten?

  Alt 30. Okt 2019, 21:28
Habs hinbekommen.

Im CLSID/Instance/InitPropertyBag findet sich "TargetKnownFolder" (Registry).
Dieser Wert dann mit "SHGetKnownFolderItem" nutzen und mit "GetDisplayName" kann ich dann Name sowie Pfad ermitteln.
  Mit Zitat antworten Zitat
ghubi01

Registriert seit: 18. Nov 2017
135 Beiträge
 
Delphi 12 Athens
 
#5

AW: Liste von "Dieser PC" erhalten?

  Alt 31. Okt 2019, 09:46
Hallo,

wo genau in der Registry findet man den Wert, den Du gefunden hast?
Die Schlüsselpfadangabe CLSID\Instance\InitPropertyBag gibt es in meiner gesamten Registry nicht.
Es gibt aber mehrere Einträge wie HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSDI\{...}\In stance\InitPropertyBag\TargetKnownFolder.


Geändert von ghubi01 (31. Okt 2019 um 09:49 Uhr) Grund: Versucht das Leerzeichen bei Instance zu löschen
  Mit Zitat antworten Zitat
peterbelow

Registriert seit: 12. Jan 2019
Ort: Hessen
711 Beiträge
 
Delphi 12 Athens
 
#6

AW: Liste von "Dieser PC" erhalten?

  Alt 31. Okt 2019, 14:06
Hallo,

wo genau in der Registry findet man den Wert, den Du gefunden hast?
Die Schlüsselpfadangabe CLSID\Instance\InitPropertyBag gibt es in meiner gesamten Registry nicht.
Es gibt aber mehrere Einträge wie HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSDI\{...}\In stance\InitPropertyBag\TargetKnownFolder.

Lass die Finger von der Regfstry, verwende das Shell APi. http://bcbjournal.org/articles/vol4/..._namespace.htm
Peter Below
  Mit Zitat antworten Zitat
MicMic

Registriert seit: 26. Mai 2018
296 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#7

AW: Liste von "Dieser PC" erhalten?

  Alt 31. Okt 2019, 14:17
Zitat:
s gibt aber mehrere Einträge wie HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSDI\{...}\In stance\InitPropertyBag\TargetKnownFolder.
Ja, die meine ich. Aber ich glaube, da muss man noch schauen, wegen 32/64 Bit Windows.

Zitat:
Lass die Finger von der Regfstry, verwende das Shell APi. http://bcbjournal.org/articles/vol4/..._namespace.htm
Ich nutze ja schon die API aber die aktuelle Liste bekommt man wohl nicht durch die API. Also ich meine die Ordner, die in "Dieser PC" beim Explorer gelistet sind. Deswegen noch die Registry (für die Liste = Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Win dows\CurrentVersion\Explorer\MyComputer\NameSpace)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:39 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz