Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die Befehlspalette bietet ein vollständiges Erweiterungsmodell, mit dem Entwickler eigene Erfahrungen für die Palette erstellen können.
Die schnellste Möglichkeit zum Schreiben von Erweiterungen besteht aus der Befehlspalette selbst. Führen Sie einfach den Befehl "Neue Erweiterung erstellen" aus, füllen Sie die Felder aus, um das Vorlagenprojekt aufzufüllen, und Sie sollten bereit zum Starten sein.
Ausführlichere Anweisungen finden Sie auf den folgenden Seiten:
- Erstellen einer Erweiterung
- Hinzufügen von Befehlen
- Aktualisieren einer Liste von Befehlen
- Hinzufügen von Befehlen auf oberster Ebene zu Ihrer Erweiterung
- Befehlsergebnisse
- Anzeigen von Markdowninhalten
- Eingabedaten von Benutzern mit Formularen erfassen
Details zur Erweiterung
Befehlspalette definiert eine WinRT-API (Microsoft.CommandPalette.Extensions), in der Erweiterungen mit Befehlspalette kommunizieren können.
Die Befehlspalette verwendet den Paketkatalog, um Apps zu finden, die sich selbst als windows.appExtension für com.microsoft.commandpalette auflisten.
Registrieren Ihrer Erweiterung
Erweiterungen können sich mithilfe von .appxmanifest selbst bei der Befehlspalette registrieren. Beispiel:
<Extensions>
<com:Extension Category="windows.comServer">
<com:ComServer>
<com:ExeServer Executable="ExtensionName.exe" Arguments="-RegisterProcessAsComServer" DisplayName="Sample Extension">
<com:Class Id="<Extension CLSID Here>" DisplayName="Sample Extension" />
</com:ExeServer>
</com:ComServer>
</com:Extension>
<uap3:Extension Category="windows.appExtension">
<uap3:AppExtension Name="com.microsoft.commandpalette"
Id="YourApplicationUniqueId"
PublicFolder="Public"
DisplayName="Sample Extension"
Description="Sample Extension for Command Palette">
<uap3:Properties>
<CmdPalProvider>
<Activation>
<CreateInstance ClassId="<Extension CLSID Here>" />
</Activation>
<SupportedInterfaces>
<Commands />
</SupportedInterfaces>
</CmdPalProvider>
</uap3:Properties>
</uap3:AppExtension>
</uap3:Extension>
</Extensions>
In diesem Manifest verwenden wir einen out-of-process COM-Server, um als Kommunikationsschicht zwischen Ihrer App und der Befehlspalette zu fungieren. Machen Sie sich keine Sorgen! Das Vorlagenprojekt erstellt für Sie einen COM-Server, startet ihn und überführt Ihre Objekte in die Befehlspalette.
Wichtige Hinweise
Einige wichtige Elemente zum Manifestbeispiel:
- Die Anwendung muss eine
Extensions.uap3Extension.AppExtensionmit dem Namencom.microsoft.commandpaletteangeben. Dies ist der eindeutige Bezeichner, der von der Befehlspalette verwendet wird, um die Erweiterungen zu finden. - Die Anwendung muss ein
Extensions.comExtension.ComServerangeben, um ihre COM-Klasse zu hosten. Auf diese Weise kann das Betriebssystem diese GUID als COM-Klasse registrieren, die instanziiert werden kann.- Stellen Sie sicher, dass diese CLSID eindeutig ist und mit der Ihrer Anwendung übereinstimmt. Wenn Sie einen ändern, müssen Sie alle drei ändern.
- In
PropertiesvonAppExtensionmüssen Sie einCmdPalProvider-Element angeben. Hier geben Sie die CLSID- der COM-Klasse an, die Befehlspalette instanziiert, um mit Ihrer Erweiterung zu interagieren.- Derzeit wird nur
Commandsunterstützt.
- Derzeit wird nur
Verwandte Inhalte
Windows developer