Programmgesteuerte Bezeichner

Die Shell verwendet einen Programmbezeichner (ProgID)-Registrierungsunterschlüssel, um einen Dateityp einer Anwendung zuzuordnen und das Verhalten der Zuordnung zu steuern. Die progID-Einträge, die für Dateizuordnungen verwendet werden, befinden sich unter HKEY_CLASSES_ROOT in der Registrierung.

Dieses Thema wird wie folgt organisiert:

Weitere Informationen finden Sie unter "So registrieren Sie einen Dateityp für eine neue Anwendung".

Programmgesteuerte Bezeichnerelemente, die von Dateizuordnungen verwendet werden

Das richtige Format eines ProgID-Schlüsselnamens lautet [Anbieter oder Anwendung]. [Komponente]. [Version], getrennt durch Punkte und ohne Leerzeichen, wie in Word.Document.6. Der Versionsbereich ist optional, aber dringend empfohlen. Weitere Informationen finden Sie unter Verwenden von programmgesteuerten Versionsbezeichnern.

Ein ProgID-Unterschlüssel sollte die folgenden Elemente enthalten. Beachten Sie, dass einige Zeichenfolgendaten in diesem Schlüssel bestimmte Formatierungen erfordern.

Element BESCHREIBUNG
(Standard) Legen Sie den Standardeintrag des ProgID-Unterschlüssels auf einen Anzeigenamen für diese ProgID fest, der für den Benutzer geeignet ist. Die Verwendung dieses Eintrags, um den Anzeigenamen zu halten, ist von dem FriendlyTypeName-Eintrag auf Systemen, die Windows 2000 oder höher ausgeführt werden, veraltet. Sie sollten diesen Wert jedoch für die Abwärtskompatibilität festlegen.
AllowSilentDefaultTakeOver (eingeführt in Windows 8) Legen Sie diesen optionalen Eintrag fest, um zu signalisieren, dass Windows diese ProgID ignorieren sollte, wenn Sie einen Standardhandler für einen öffentlichen Dateityp bestimmen. Unabhängig davon, ob dieser Wert festgelegt ist, wird die ProgID weiterhin im Kontextmenü "OpenWith" und im Dialogfeld angezeigt. Dies ist ein REG_NONE Wert.
AppUserModelID (eingeführt in Windows 7) Legen Sie diesen optionalen Eintrag auf die explizite Anwendungsbenutzermodell-ID (AppUserModelID) fest, wenn die Anwendung eine explizite AppUserModelID verwendet und entweder die automatisch generierten zuletzt generierten oder häufigen Sprunglisten des Systems verwendet oder eine benutzerdefinierte Sprungliste bereitstellt. Wenn eine Anwendung eine explizite AppUserModelID verwendet und diesen Wert nicht festgelegt hat, werden Elemente in den Sprunglisten dieser Anwendung nicht angezeigt. Dies ist eine REG_SZ Zeichenfolge. Weitere Informationen finden Sie unter Anwendungsbenutzermodell-IDs (AppUserModelIDs).
EditFlags Legen Sie diesen optionalen Eintrag mithilfe von Flags aus der FILETYPEATTRIBUTEFLAGS-Enumeration fest. Der EditFlags-Eintrag steuert einige Aspekte der Behandlung der Dateitypen, die mit dieser ProgID verknüpft sind. Sie können auch den Eintrag "EditFlags" verwenden, um zu begrenzen, wie viel der Benutzer bestimmte Aspekte dieser Dateitypen mithilfe des Eigenschaftenblatts einer Datei ändern kann. Die für EditFlags verwendeten FILETYPEATTRIBUTEFLAGS-Werte sind binäre Werte, sodass Sie mehrere Attribute in einem einzelnen Wert in einem bitweisen OR-Vorgang kombinieren können. Dies ist ein REG_DWORD oder REG_BINARY Wert.
FriendlyTypeName Legen Sie diesen Eintrag auf einen Anzeigenamen für die ProgID fest, der für den Benutzer geeignet ist. Für Konsistenz sollte diese Zeichenfolge dieselben Daten wie der Standardeintrag für diesen ProgID-Schlüssel enthalten. Dieser Eintrag kann entweder eine REG_SZ oder REG_EXPAND_SZ Zeichenfolge sein, muss jedoch als indirekte Zeichenfolge formatiert werden (ein vollqualifizierter Dateiname und ressourcenwert vor dem @-Symbol), z. B. @%SystemRoot%\shell32.dll,-154.
Infotipp Legen Sie diesen Eintrag auf eine kurze Hilfenachricht fest, die die Shell für diese ProgID anzeigt. Der Infoinfo-Eintrag wird in einem Maus-Über-Dialogfeld angezeigt. Dieser Wert kann entweder eine REG_SZ oder REG_EXPAND_SZ Zeichenfolge sein, aber wie FriendlyTypeName muss er als indirekte Zeichenfolge formatiert werden.
CurVer Legen Sie den Eintrag (Standard) dieses Unterschlüssels auf die aktuellste Version dieser ProgID fest.
[! Hinweis]
Es sei denn, Sie verfügen über parallele Anwendungsversionen, also mehrere Versionen, die auf demselben System installiert sind, sollten Sie die Verwendung von CurVer vermeiden.

DefaultIcon. Legen Sie den Eintrag (Standard) dieses Unterschlüssels auf das Standardsymbol fest, das Sie für Dateitypen anzeigen möchten, die dieser ProgID zugeordnet sind. Dieser Wert kann entweder eine REG_SZ oder eine REG_EXPAND_SZ Zeichenfolge sein, muss jedoch als vollqualifizierter Dateiname mit dem Ressourcenwert der Telefonzentrale bereitgestellt werden, z. B. %SystemRoot%\shell32.dll,-154.

 

Das folgende Registrierungsschlüsselbeispiel veranschaulicht einen ProgID-Schlüsselknoten für die Dateizuordnung:

HKEY_CLASSES_ROOT
   Vendor.App.1
      (Default) = My Friendly Name
      AllowSilentDefaultTakeOver
      AppUserModelID = Vendor.Application
      EditFlags = 0x00000001
      FriendlyTypeName = @%SystemRoot%\shell32.dll,-154
      InfoTip = @%SystemRoot%\shell32.dll,-54
      CurVer
         (Default) = Vendor.App.1
      DefaultIcon
         (Default) = %SystemRoot%\shell32.dll,-1

Verwenden von versionierten programmgesteuerten Bezeichnern

Eine versionierte ProgID ist eine, deren Version im Namen angegeben ist. Dazu fügen Sie in der Regel einen Punkt und die Versionsnummer zum Namen hinzu. Beispiel:

  • Word.Document.6
  • Word.Document.8

Dies sind versionierte ProgIDs mit Versionen 6 und 8. Wenn Sie über eine parallele Anwendung verfügen, also eine Anwendung, die mehrere Versionen Ihrer Anwendung gleichzeitig unterstützt, verwenden Sie CurVer und Version Independent ProgIDs. Andernfalls sollten CurVer- und Versionsunabhängige ProgIDs vermieden werden, da sie zu Ineffizienz führen.

So registrieren Sie einen Dateityp für eine neue Anwendung

Anwendungsregistrierung

Dateitypen

Funktionsweise von Dateizuordnungen

Inhaltsansicht nach Dateityp oder Typ

Dateitypüberprüfung

Dateityphandler

Wahrgenommene Typen

Zuordnungsarrays