Freigeben über


Programmgesteuerte Bezeichner

Die Shell verwendet einen ProgID-Registrierungsunterschlüssel (Programmatic Identifier), 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 ist wie folgt organisiert:

Weitere Informationen finden Sie unter Registrieren eines Dateityps für eine neue Anwendung

Programmgesteuerte Bezeichnerelemente, die von Dateizuordnungen verwendet werden

Das richtige Format eines ProgID-Schlüsselnamens lautet [Vendor or Application]. [Komponente]. [Version], getrennt durch Punkte und ohne Leerzeichen, wie in Word.Document.6. Der Version Teil ist optional, wird jedoch dringend empfohlen. Weitere Informationen finden Sie unter Verwenden von programmgesteuerten Versionskennungen.

Ein ProgID-Unterschlüssel sollte die folgenden Elemente enthalten. Beachten Sie, dass einige Zeichenfolgendaten in diesem Schlüssel eine bestimmte Formatierung 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 angezeigt werden kann. Die Verwendung dieses Eintrags zum Speichern des Anzeigenamens ist durch den FriendlyTypeName-Eintrag auf Systemen unter Windows 2000 oder höher veraltet. Sie sollten diesen Wert jedoch aus Gründen der Abwärtskompatibilität festlegen.
AllowSilentDefaultTakeOver (eingeführt in Windows 8) Legen Sie diesen optionalen Eintrag fest, um zu signalisieren, dass Windows diese ProgID ignorieren soll, wenn sie einen Standardhandler für einen öffentlichen Dateityp bestimmt. Unabhängig davon, ob dieser Wert festgelegt ist, wird die ProgID weiterhin im Kontextmenü und Im Dialogfeld "ÖffnenWith" angezeigt. Dies ist ein REG_NONE Wert.
AppUserModelID- (eingeführt in Windows 7) Legen Sie diesen optionalen Eintrag auf die explizite Anwendungsbenutzermodell-ID (AppUserModelID) der Anwendung fest, wenn die Anwendung eine explizite AppUserModelID verwendet und entweder die automatisch generierte Zuletzt verwendete oder häufige Sprunglisten 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 Shell-Verarbeitung der dateitypen, die mit dieser ProgID verknüpft sind. Sie können auch den EditFlags-Eintrag verwenden, um einzuschränken, wie viel der Benutzer bestimmte Aspekte dieser Dateitypen mithilfe des Eigenschaftenblatts einer Datei ändern kann. Die FILETYPEATTRIBUTEFLAGS Werte, die für EditFlags verwendet werden, sind Binärwerte, sodass Sie mehrere Attribute in einem bitweisen OR-Vorgang in einem einzelnen Wert 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 angezeigt werden kann. Aus Gründen der 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.
InfoInfo- Legen Sie diesen Eintrag auf eine kurze Hilfemeldung fest, die von der Shell für diese ProgID angezeigt wird. 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 neueste Version dieser ProgID fest.
Hinweis: Es sei denn, Sie haben parallele Anwendungsversionen, d. h. mehrere Versionen, die auf demselben System installiert sind, sollten Sie vermeiden, CurVerzu verwenden.
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 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 programmgesteuerten Versionskennungen

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

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

Hierbei handelt es sich um versionierte ProgIDs mit den Versionen 6 bzw. 8. Wenn Sie über eine parallele Anwendung verfügen, d. h. eine Anwendung, die mehrere Versionen Ihrer Anwendung unterstützt, die gleichzeitig installiert ist, verwenden Sie CurVer und versionsunabhängige ProgIDs. Andernfalls sollten CurVer und Versionsunabhängige ProgIDs vermieden werden, da sie zu Ineffizienz führen.

Registrieren eines Dateityps für eine neue Anwendung

Anwendungsregistrierung

Dateitypen

Funktionsweise von Dateizuordnungen

Inhaltsansicht nach Dateityp oder Art

Dateitypüberprüfung

Dateityphandler

wahrgenommenen Typen

Zuordnungsarrays