Wo sind die Standardprogrammzuordnungen in der Registrierung gespeichert? [Duplikat]

16

Wenn ich das assocBefehlszeilenprogramm für eine Erweiterung ausführe , wird der Dateityp / die Beschreibung für die Erweiterung angezeigt, die ich in der Registrierung festgelegt habe. Wenn ich jedoch zu Systemsteuerung -> Standardprogramme - Zuordnungen festlegen gehe, wird eine andere Beschreibung und ein anderes Standardprogramm angezeigt.

Früher waren es die beiden Tasten:

  • HKCR\.ext(Standard) = Kennung
  • Bezeichner (Standard) = "Dateibeschreibung"
    • \ DefaultIcon (Standard) = Ein Symbol
    • \ Shell \ Open \ Command (Standardeinstellung) = Ein Editor

Jetzt scheint es jedoch eine Überschreibung zu geben, die in der Liste der Standardprogramme angezeigt wird.

Meine Frage ist, wo ich diese überschriebenen Zuordnungsinformationen gespeichert habe? Ich gehe davon aus, dass es in der Registrierung ist, aber ich sehe es nicht in den Schlüsseln, von denen ich erwarte, dass sie es sind. Ich glaube, dass dies im Vista-Zeitrahmen geändert wurde, aber es kann auch in XP gewesen sein.

Update: Da es einige Verwirrung gibt, führen Sie den folgenden Test durch. Benennen Sie eine Datei in eine neue Erweiterung um. Erstellen Sie eine Zuordnung in den oben genannten Registrierungsschlüsseln. Dann klicken Sie rechts auf die Datei, Öffnen mit und ein anderes Programm wählen (prüft es die Standardeinstellung zu machen). Überprüfen Sie nun die Registrierung. Es ist unverändert, aber jetzt ist die Datei mit einer anderen Beschreibung, einem anderen Symbol und einem anderen Standardprogramm verknüpft.

Jim McKeeth
quelle

Antworten:

20

Sollte sein in:

HKEY_LOCAL_MACHINE\SOFTWARE\Classes und HKCU\SOFTWARE\Classes

Und ich glaube nicht, dass sich dies in letzter Zeit geändert hat.

Die Priorität ist für den aktuellen Benutzer, dann lokale Maschine (ich glaube, Alias ​​zu Klassen root).

Der Explorer verwendet einen anderen Satz von Registrierungsschlüsseln:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\

soandos
quelle
Ich glaube, das ist auch was HKEY_CLASSES_ROOTKarten. Diese speichern, was der assocBefehl zurückgibt. Die von Standardprogrammen in der Systemsteuerung zurückgegebenen Überschreibungsinformationen unterscheiden sich jedoch.
Jim McKeeth
Ich habe gesehen, dass Ihre Bearbeitung davon abhängt, dass es sich um eine Root-Klasse handelt. Sie vermissen jedoch den Punkt, dass an einer anderen Stelle überschriebene Zuordnungen vorhanden sind, die in der Liste " Standardprogramme" in der Systemsteuerung angezeigt werden .
Jim McKeeth
und ist es nicht die einstellungen in hkcu?
Soandos
Nein, siehe das Update, das ich hinzugefügt habe. Sie können es selbst testen.
Jim McKeeth
1
Du bist herzlich Willkommen. Entschuldigen Sie die frühere Verwirrung.
Soandos