![]() |
Installiere Dateitypen auflisten
Hallo,
wie kann man die Dateitypen, die auf dem Computer installiert sind, auflisten. Die Installierten Typen stehen im Registry-Hotkey HKEY_CLASSES_ROOT. Eigentlich muss man ja einfach alle Keys auflisten die mit einem "." anfangen, aber wie soll man das anstellen? Kann mir jemand Helfen? Danke im Voraus :cheers: |
Re: Installiere Dateitypen auflisten
Die Klasse TRegistry in der Unit Registry.pas bietet entsprechende Methoden. Musst du dir mal in der Hilfe angucken.
|
Re: Installiere Dateitypen auflisten
Ich habe eine Funktion mit der man die Keys auflistet gefunden (TRegistry.GetKeyNames(Strings: TStrings)) aber das funktioniert komischer weisse nur wenn ich beim HotKey nccoh einen weiteren SubKey angebe :gruebel:
Delphi-Quellcode:
Wenn ich die Keys auflisten will die sich dierekt im HotKey befinden gibt die funktion keinen Wert zurück aber die Registrierten Dateien beinden sich ja dierekt im HotKey und nicht in einem Seperaten SubKey
//Beispiel - So funktioniert's
... R.RootKey:=HKEY_CURRENT_USER; R.OpenKey('Software',False); R.GetKeyNames(ListBox1.Items);
Delphi-Quellcode:
Danke für jede Hilfe
//Beispiel - So funktioniert es nicht
... R.RootKey:=HKEY_CLASSES_ROOT; R.GetKeyNames(ListBox1.Items); :cheers: |
Re: Installiere Dateitypen auflisten
Was ist denn HotKey in diesem Zusammenhang? :gruebel:
|
Re: Installiere Dateitypen auflisten
Also wenn ich zum Beispiel die Registry-Keys in dem Key HKEY_CURRENT_USER\Software auflisten will funktioniert das ohne Probleme mit der funktion GetKeyNames(Strings: TStrings) aber wenn ich ich die Registry-Key auflisten will die in dem Key HKEY_CLASSES_ROOT oder HKEY_CURRENT_USER auflisten will funktioniert dass nicht. Ich hoffe ich habe mich jetzt besser ausgedrückt :)
|
Re: Installiere Dateitypen auflisten
Nutze HKLM\Software\Classes. HKCR ist nur eine Verknüpfung hierhin (und entsprechende User-Klassen). Zum Öffnen würde ich OpenKeyReadOnly nehmen, das gibt weniger Stress ohne Admin-Rechte
Es heißt übrigens nicht HotKey sondern Hive Key /edit: Statt OpenKeyReadonly kannst du auch Reg.Access auf KEY_READ setzen |
Re: Installiere Dateitypen auflisten
kann es sein das hier (HKLM\Software\Classes) nicht alle Dateierweiterungen stehen. Weil bei HKCR gibt es bei mir erweiterungen wie z.B. .bdsproj die ich im HKLM\Software\Classes vergeblich suche. => Vergesst es! Ich habe mich vertan :oops: :oops: :oops:
//edit1 Danke für den Hinweis das es Hive Key heisst :-D |
Re: Installiere Dateitypen auflisten
Auch wenn du dich vertan hast, die Möglichkeit gibt es. Guck mal unter HKCU\Software\Classes. Auch dort könnten Dateiendungen versteckt sein, die dann aber nur für den aktuellen Benutzer gelten würden. Mir fällt aber kein Programm ein, dass das macht.
|
Re: Installiere Dateitypen auflisten
Moin Zusammen,
nur der Vollständigkeit halber: Seit Windows 2000 gibt es die Unterscheidung zwischen HKEY_CURRENT_USER\Sofware\Classes und HKEY_LOCAL_MACHINE\Software\Classes. HKEY_CLASSES_ROOT zeigt eine Zusammenfassung dieser beiden Schlüssel, wobei die des CurrentUser Vorrang haben. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:04 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