Ausschließen einer Anwendung aus dem Dialogfeld Öffnen mit für nicht zugeordnete Dateitypen
Wenn ein Benutzer versucht, eine Datei zu öffnen, die kein Mitglied eines registrierten Dateityps ist (d. h. ein unbekannter Dateityp), oder wenn ein Benutzer Öffnen mit oder Öffnen mit -> Standardprogramm aus dem Kontextmenü einer Datei auswählen auswählt, zeigt die Shell ein Untermenü oder Dialogfeld an, in dem der Benutzer das Programm angeben kann, das zum Öffnen der Datei verwendet wird.
Standardmäßig wird jede Anwendung, die als Unterschlüssel von HKEY _ CLASSES _ ROOT Applications registriert \ ist, im Dialogfeld Öffnen mit angezeigt. Diese Anwendungen werden in Öffnen mit dargestellt, unabhängig davon, ob die Anwendung für die Verarbeitung des Dateityps registriert ist.
Um zu verhindern, dass eine Anwendung im Dialogfeld Öffnen mit angezeigt wird, wenn die Anwendung nicht verwendet werden soll oder nicht zum Öffnen bestimmter Dateitypen verwendet werden kann, verwenden Sie eine der beiden in diesem Thema beschriebenen Verfahren.
Instructions
Schritt 1:
Fügen Sie dem Unterschlüssel der Anwendung einen NoOpenWith-Eintrag hinzu. Wenn eine Anwendung einen Dateityp verwendet, zeichnet Windows diese Informationen auf, um die Liste Empfohlene Programme zu erstellen. Diese Liste wird im Untermenü Öffnen mit angezeigt, wie im folgenden Screenshot gezeigt.

Diese empfohlenen Anwendungen werden auch im Abschnitt Empfohlene Programme des Dialogfelds Öffnen mit angezeigt, wie im folgenden Screenshot gezeigt.

Hinweis
Wenn sich eine Anwendung in den OpenWithList- oder OpenWithProgIDs für den Dateityp registriert hat, wird sie in der Liste Empfohlene Programme angezeigt, auch wenn der Eintrag NoOpenWith festgelegt ist. Denken Sie außerdem daran, dass ein Benutzer unabhängig davon, ob eine Anwendung in einer Liste empfohlener Programme angeboten wird, manuell zu jeder ausführbaren Datei navigieren kann.
Anwendungen können diese Nachverfolgung deaktivieren, indem sie unter dem Unterschlüssel der Anwendung einen NoOpenWith-Wert angeben.
Der NoOpenWith-Eintrag ist ein leerer REG _ SZ-Wert, wie im folgenden Beispiel gezeigt.
HKEY_CLASSES_ROOT
Applications
MyProgram.exe
NoOpenWith
Das Festlegen des NoOpenWith-Eintrags hat auch folgende Auswirkungen:
- Verhindert das Anheften einer Datei an die Sprungliste der Anwendung durch Drag & Drop, es sei denn, die Anwendung ist speziell für die Verarbeitung dieses Dateityps registriert.
- Verhindert, dass das allgemeine Dateidialogfeld und alle Aufrufe der SHAddToRecentDocs-Funktion dem Sprungliste der Anwendung eine Datei hinzufügen, es sei denn, die Anwendung ist speziell für die Verarbeitung dieses Dateityps registriert.
Schritt 2:
Die zweite Möglichkeit, zu verhindern, dass eine Anwendung im Dialogfeld Öffnen mit angezeigt wird, besteht darin, den Unterschlüssel SupportedTypes zu verwenden, um die Erweiterungen von Dateitypen explizit aufzulisten, die die Anwendung öffnen kann. Dadurch wird verhindert, dass die Anwendung im Dialogfeld Öffnen mit für Dateitypen angezeigt wird, die nicht geöffnet werden können. Außerdem wird die Anwendung wie zuvor beschrieben in der Liste Empfohlene Programme angezeigt.
Diese Methode ist besonders nützlich, wenn eine Anwendung eine Datei als einen bestimmten Dateityp speichern, diesen Dateityp jedoch nicht öffnen kann. Eine Anwendung sollte auch das _ FOS-Flag DONTADDTORECENT über IFileDialog::SetOptions festlegen, wenn das Dialogfeld Speichern aufgerufen wird. Dadurch wird verhindert, dass das Element den Abschnitten Zuletzt oder Häufig eines Sprungliste hinzugefügt wird. Außerdem wird verhindert, dass die Anwendung unter OpenWithListnachverfolgt wird.
Jede unterstützte Erweiterung wird wie im folgenden Beispiel gezeigt als Eintrag unter dem Unterschlüssel SupportedTypes hinzugefügt. Die Einträge sind vom Typ REG _ SZ oder REG _ NULL, ohne zugeordnete Werte.
HKEY_CLASSES_ROOT
Applications
ApplicationName
SupportedTypes
.ext1
.ext2
.ext3
Wenn ein SupportedTypes-Unterschlüssel bereitgestellt wird, können nur Dateien mit diesen Erweiterungen an die Sprungliste der Anwendung angeheftet oder in der Liste Zuletzt verwendeter oder häufiger Ziele einer Anwendung nachverfolgt werden.
Der NoOpenWith-Eintrag überschreibt den Unterschlüssel SupportedTypes und blendet die Anwendung im Dialogfeld Öffnen mit aus.