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.
Wenn Ihre Desktop-App verpackt ist (paketidentität zur Laufzeit hat), können Sie Erweiterungen verwenden, um Ihre App in Windows zu integrieren, indem Sie vordefinierte Erweiterungen im Paketmanifestverwenden. Siehe auch Features, die die Paketidentitäterfordern.
Verwenden Sie beispielsweise eine Erweiterung, um eine Firewall-Ausnahme zu erstellen; legen Sie Ihre App als Standardanwendung für einen Dateityp fest; oder verlinken Sie Startkacheln mit Ihrer App. Um eine Erweiterung zu verwenden, fügen Sie einfach XML zur Paketmanifestdatei Ihrer App hinzu. Es ist kein Code erforderlich.
In diesem Thema werden diese Erweiterungen und die Aufgaben beschrieben, die Sie mithilfe dieser Erweiterungen ausführen können.
Hinweis
Die in diesem Thema beschriebenen Features erfordern, dass Ihre App gepackt ist (hat Paketidentität zur Laufzeit). Dazu gehören verpackte Apps (siehe Erstellen eines neuen Projekts für eine verpackte WinUI 3-Desktop-App) und verpackte Apps mit externem Speicherort (siehe Gewähren der Paketidentität durch Verpacken mit externem Speicherort). Siehe auch Features, die die Paketidentitäterfordern.
Übertragen von Benutzern auf Ihre App
Helfen Sie Benutzern beim Übergang zu Ihrer verpackten App.
- Umleiten Ihrer vorhandenen Desktop-App zu Ihrer verpackten App
- Weisen Sie vorhandene Startkacheln und Taskleistenschaltflächen auf Ihre verpackte Anwendung
- Lassen Sie Ihre verpackte App Dateien anstelle Ihrer Desktop-App öffnen
- Ordnen Sie Ihre verpackte App einer Reihe von Dateitypen zu
- Hinzufügen von Optionen zu den Kontextmenüs von Dateien mit einem bestimmten Dateityp
- Öffnen bestimmter Dateitypen direkt mithilfe einer URL
Leiten Sie Ihre vorhandene Desktop-App zu Ihrer verpackten App um.
Wenn Benutzer Ihre vorhandene entpackte Desktop-App starten, können Sie die verpackte App so konfigurieren, dass sie stattdessen geöffnet wird.
Hinweis
Dieses Feature wird in Windows Insider Preview Build 21313 und höheren Versionen unterstützt.
So aktivieren Sie dieses Verhalten:
- Fügen Sie Registrierungseinträge hinzu, um die ausführbare Datei Ihrer nicht verpackten Desktop-App zu Ihrer verpackten App umzuleiten.
- Registrieren Sie Ihre verpackte App, sodass sie gestartet wird, wenn Ihre ausgepackte Desktop-App ausführbare Datei gestartet wird.
Zum Hinzufügen von Registrierungseinträgen, um die ausführbare Datei Ihrer nicht verpackten Desktop-App umzuleiten.
- Erstellen Sie in der Registrierung einen Unterschlüssel mit dem Namen ihrer ausführbaren Desktop-App-Datei unter dem schlüssel HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options.
- Fügen Sie unter diesem Unterschlüssel die folgenden Werte hinzu:
- AppExecutionAliasRedirect (DWORD): Wenn dieser Wert auf 1 festgelegt ist, sucht das System nach einer AppExecutionAlias Paketerweiterung mit demselben Namen wie die ausführbare Datei. Wenn die AppExecutionAlias-Erweiterung aktiviert ist, wird die verpackte App mit diesem Wert aktiviert.
- AppExecutionAliasRedirectPackages (REG_SZ): Das System leitet nur auf die aufgelisteten Pakete um. Pakete werden nach ihrem Paketfamiliennamen aufgelistet, getrennt durch Semikolons. Wenn der Sonderwert * verwendet wird, leitet das System von einem Paket zu einem AppExecutionAlias um.
Beispiel:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\contosoapp.exe
AppExecutionAliasRedirect = 1
AppExecutionAliasRedirectPackages = "Microsoft.WindowsNotepad_8weky8webbe"
Registrieren Sie Ihre gepackte App zum Start
Fügen Sie im Paketmanifest eine AppExecutionAlias Erweiterung hinzu, die den Namen der unverpackten ausführbaren Desktop-App registriert. Beispiel:
<Package
xmlns:uap3="http://schemas.microsoft.com/appx/manifest/uap/windows10/3"
IgnorableNamespaces="uap3">
<Applications>
<Application>
<Extensions>
<uap3:Extension Category="windows.appExecutionAlias" EntryPoint="Windows.FullTrustApplication">
<uap3:AppExecutionAlias>
<desktop:ExecutionAlias Alias="contosoapp.exe" />
</uap3:AppExecutionAlias>
</uap3:Extension>
</Extensions>
</Application>
</Applications>
</Package>
Deaktiviere die Umleitung
Benutzer können die Umleitung deaktivieren und anschließend Ihre App im entpackten Zustand über die folgenden Optionen starten:
- Sie können die verpackte Version Ihrer App deinstallieren.
- Der Benutzer kann den AppExecutionAlias Eintrag für seine verpackte App auf der Seite App-Ausführungsalias in Einstellungendeaktivieren.
XML-Namespaces
http://schemas.microsoft.com/appx/manifest/uap/windows10/3http://schemas.microsoft.com/appx/manifest/desktop/windows10
Elemente und Attribute dieser Erweiterung
<uap3:Extension
Category="windows.appExecutionAlias"
EntryPoint="Windows.FullTrustApplication">
<uap3:AppExecutionAlias>
<desktop:ExecutionAlias Alias="[AliasName]" />
</uap3:AppExecutionAlias>
</uap3:Extension>
| Name | BESCHREIBUNG |
|---|---|
| Kategorie | Immer windows.appExecutionAlias. |
| Ausführbar | Der relative Pfad zur ausführbaren Datei, die gestartet wird, wenn der Alias aufgerufen wird. |
| Alias | Der kurze Name für Ihre App. Sie muss immer mit der Erweiterung ".exe" enden. |
Zeigen Sie vorhandene Startkacheln und Taskleistenschaltflächen auf Ihre verpackte App.
Möglicherweise haben Ihre Benutzer Ihre Desktopanwendung an die Taskleiste oder das Startmenü angeheftet. Sie können diese Tastenkombinationen auf Ihre neue verpackte App verweisen.
XML-Namespace
http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities/3
Elemente und Attribute dieser Erweiterung
<Extension Category="windows.desktopAppMigration">
<DesktopAppMigration>
<DesktopApp AumId="[your_app_aumid]" />
<DesktopApp ShortcutPath="[path]" />
</DesktopAppMigration>
</Extension>
Finden Sie die vollständige Schemareferenz hier.
| Name | BESCHREIBUNG |
|---|---|
| Kategorie | Immer windows.desktopAppMigration. |
| AumID | Die Anwendungsbenutzermodell-ID Ihrer verpackten App. |
| ShortcutPath | Der Pfad zu .lnk-Dateien, die Ihre App-Desktopversion starten. |
Beispiel
<Package
xmlns:rescap3="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities/3"
IgnorableNamespaces="rescap3">
<Applications>
<Application>
<Extensions>
<rescap3:Extension Category="windows.desktopAppMigration">
<rescap3:DesktopAppMigration>
<rescap3:DesktopApp AumId="[your_app_aumid]" />
<rescap3:DesktopApp ShortcutPath="%USERPROFILE%\Desktop\[my_app].lnk" />
<rescap3:DesktopApp ShortcutPath="%APPDATA%\Microsoft\Windows\Start Menu\Programs\[my_app].lnk" />
<rescap3:DesktopApp ShortcutPath="%PROGRAMDATA%\Microsoft\Windows\Start Menu\Programs\[my_app_folder]\[my_app].lnk"/>
</rescap3:DesktopAppMigration>
</rescap3:Extension>
</Extensions>
</Application>
</Applications>
</Package>
Verwandtes Beispiel
WPF-Bildanzeige mit Übergang/Migration/Deinstallation
Machen Sie ihre verpackte Anwendung zum Öffnen von Dateien anstelle ihrer Desktop-App
Sie können sicherstellen, dass Benutzer Ihre neue verpackte Anwendung standardmäßig für bestimmte Dateitypen öffnen, anstatt die Desktopversion Ihrer App zu öffnen.
Dazu geben Sie die programmgesteuerte ID (ProgID) jeder Anwendung an, von der Sie Dateizuordnungen erben möchten.
XML-Namespaces
http://schemas.microsoft.com/appx/manifest/uap/windows10/3http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities/3
Elemente und Attribute dieser Erweiterung
<Extension Category="windows.fileTypeAssociation">
<FileTypeAssociation Name="[Name]">
<MigrationProgIds>
<MigrationProgId>"[ProgID]"</MigrationProgId>
</MigrationProgIds>
</FileTypeAssociation>
</Extension>
Finden Sie die vollständige Schemareferenz hier.
| Name | BESCHREIBUNG |
|---|---|
| Kategorie | Immer windows.fileTypeAssociation. |
| Name | Der Name der Dateitypzuordnung. Sie können diesen Namen verwenden, um Dateitypen zu organisieren und zu gruppieren. Der Name darf nur aus Kleinbuchstaben und ohne Leerzeichen bestehen. |
| MigrationProgId | Die Programm-ID (ProgID), die Anwendung, Komponente und Version der Desktop-Anwendung beschreibt, von der Sie Dateizuordnungen erben möchten. |
Beispiel
<Package
xmlns:uap3="http://schemas.microsoft.com/appx/manifest/uap/windows10/3"
xmlns:rescap3="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities/3"
IgnorableNamespaces="uap3, rescap3">
<Applications>
<Application>
<Extensions>
<uap:Extension Category="windows.fileTypeAssociation">
<uap3:FileTypeAssociation Name="myfiletypes">
<rescap3:MigrationProgIds>
<rescap3:MigrationProgId>Foo.Bar.1</rescap3:MigrationProgId>
<rescap3:MigrationProgId>Foo.Bar.2</rescap3:MigrationProgId>
</rescap3:MigrationProgIds>
</uap3:FileTypeAssociation>
</uap:Extension>
</Extensions>
</Application>
</Applications>
</Package>
Verwandtes Beispiel
WPF-Bildanzeige mit Übergang/Migration/Deinstallation
Zuordnen der verpackten Anwendung zu einer Reihe von Dateitypen
Sie können Ihrer gepackten Anwendung Dateityperweiterungen zuordnen. Wenn ein Benutzer mit der rechten Maustaste auf eine Datei im Datei-Explorer klickt und dann die Option " Öffnen mit " auswählt, wird Ihre Anwendung in der Liste der Vorschläge angezeigt. Weitere Informationen zur Verwendung dieser Erweiterung finden Sie unter Integrieren einer verpackten Desktop-App in den Datei-Explorer.
XML-Namespaces
http://schemas.microsoft.com/appx/manifest/uap/windows10http://schemas.microsoft.com/appx/manifest/uap/windows10/3
Elemente und Attribute dieser Erweiterung
<Extension Category="windows.fileTypeAssociation">
<FileTypeAssociation Name="[Name]">
<SupportedFileTypes>
<FileType>"[file extension]"</FileType>
</SupportedFileTypes>
</FileTypeAssociation>
</Extension>
Finden Sie die vollständige Schemareferenz hier.
| Name | BESCHREIBUNG |
|---|---|
| Kategorie | Immer windows.fileTypeAssociation. |
| Name | Der Name der Dateitypzuordnung. Sie können diesen Namen verwenden, um Dateitypen zu organisieren und zu gruppieren. Der Name darf nur aus Kleinbuchstaben und ohne Leerzeichen bestehen. |
| Dateityp | Die von Ihrer App unterstützte Dateierweiterung. |
Beispiel
<Package
xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
xmlns:uap3="http://schemas.microsoft.com/appx/manifest/uap/windows10/3"
IgnorableNamespaces="uap, uap3">
<Applications>
<Application>
<Extensions>
<uap:Extension Category="windows.fileTypeAssociation">
<uap3:FileTypeAssociation Name="mediafiles">
<uap:SupportedFileTypes>
<uap:FileType>.avi</uap:FileType>
</uap:SupportedFileTypes>
</uap3:FileTypeAssociation>
</uap:Extension>
</Extensions>
</Application>
</Applications>
</Package>
Verwandtes Beispiel
WPF-Bildanzeige mit Übergang/Migration/Deinstallation
Hinzufügen von Optionen zu den Kontextmenüs von Dateien mit einem bestimmten Dateityp
Mit dieser Erweiterung können Sie dem Kontextmenü Optionen hinzufügen, die angezeigt werden, wenn Benutzer im Datei-Explorer mit der rechten Maustaste auf eine Datei klicken.Diese Optionen bieten Benutzern andere Möglichkeiten, mit Ihrer Datei zu interagieren, z. B. drucken, bearbeiten oder eine Vorschau der Datei anzeigen. Weitere Informationen zur Verwendung dieser Erweiterung finden Sie unter Integrieren einer verpackten Desktop-App in den Datei-Explorer.
XML-Namespaces
http://schemas.microsoft.com/appx/manifest/uap/windows10http://schemas.microsoft.com/appx/manifest/uap/windows10/2http://schemas.microsoft.com/appx/manifest/uap/windows10/3
Elemente und Attribute dieser Erweiterung
<Extension Category="windows.fileTypeAssociation">
<FileTypeAssociation Name="[Name]">
<SupportedVerbs>
<Verb Id="[ID]" Extended="[Extended]" Parameters="[parameters]">"[verb label]"</Verb>
</SupportedVerbs>
</FileTypeAssociation>
</Extension>
Finden Sie die vollständige Schemareferenz hier.
| Name | BESCHREIBUNG |
|---|---|
| Kategorie | Immer windows.fileTypeAssociation. |
| Name | Der Name der Dateitypzuordnung. Sie können diesen Namen verwenden, um Dateitypen zu organisieren und zu gruppieren. Der Name darf nur aus Kleinbuchstaben und ohne Leerzeichen bestehen. |
| Verb | Der Name, der im Kontextmenü des Datei-Explorers angezeigt wird. Diese Zeichenfolge, die ms-resource verwendet, ist lokalisierbar. |
| Id | Die eindeutige ID des Verbs. Wenn es sich bei Ihrer Anwendung um eine UWP-App handelt, wird das als Teil der Aktivierungsereignis-Argumente an Ihre App übergeben, damit sie die Auswahl des Benutzers entsprechend verarbeiten kann. Wenn Ihre Anwendung eine voll vertrauenswürdige verpackte App ist, empfängt sie stattdessen Parameter (siehe nächstes Aufzählungszeichen). |
| Die Parameter | Die Liste der Argumentparameter und -werte, die dem Verb zugeordnet sind. Wenn Ihre Anwendung eine voll vertrauenswürdige verpackte App ist, werden diese Parameter als Ereignisargumente an die Anwendung übergeben, wenn die Anwendung aktiviert wird. Sie können das Verhalten Ihrer Anwendung basierend auf verschiedenen Aktivierungsverben anpassen. Wenn eine Variable einen Dateipfad enthalten kann, schließen Sie den Parameterwert in Anführungszeichen um. Dadurch werden Probleme vermieden, die in Fällen auftreten, in denen der Pfad Leerzeichen enthält. Wenn Ihre Anwendung eine UWP-App ist, können Sie keine Parameter übergeben. Die App empfängt stattdessen die ID (siehe vorheriger Punkt). |
| Ausgedehnt | Gibt an, dass das Verb nur angezeigt wird, wenn der Benutzer das Kontextmenü anzeigt, indem er die UMSCHALTtaste gedrückt hält, bevor mit der rechten Maustaste auf die Datei geklickt wird. Dieses Attribut ist optional und standardmäßig auf einen Wert von False festgelegt (z. B. immer das Verb anzeigen), wenn nicht angegeben. Sie geben dieses Verhalten für jedes Verb einzeln an (mit Ausnahme von "Öffnen", das immer Falseist). |
Beispiel
<Package
xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
xmlns:uap2="http://schemas.microsoft.com/appx/manifest/uap/windows10/2"
xmlns:uap3="http://schemas.microsoft.com/appx/manifest/uap/windows10/3"
IgnorableNamespaces="uap, uap2, uap3">
<Applications>
<Application>
<Extensions>
<uap:Extension Category="windows.fileTypeAssociation">
<uap3:FileTypeAssociation Name="myfiletypes">
<uap2:SupportedVerbs>
<uap3:Verb Id="Edit" Parameters="/e "%1"">Edit</uap3:Verb>
<uap3:Verb Id="Print" Extended="true" Parameters="/p "%1"">Print</uap3:Verb>
</uap2:SupportedVerbs>
</uap3:FileTypeAssociation>
</uap:Extension>
</Extensions>
</Application>
</Applications>
</Package>
Verwandtes Beispiel
WPF-Bildanzeige mit Übergang/Migration/Deinstallation
Öffnen bestimmter Dateitypen direkt mithilfe einer URL
Sie können sicherstellen, dass Benutzer Ihre neue verpackte Anwendung standardmäßig für bestimmte Dateitypen öffnen, anstatt die Desktopversion Ihrer App zu öffnen.
XML-Namespaces
http://schemas.microsoft.com/appx/manifest/uap/windows10http://schemas.microsoft.com/appx/manifest/uap/windows10/3
Elemente und Attribute dieser Erweiterung
<Extension Category="windows.fileTypeAssociation">
<FileTypeAssociation Name="[Name]" UseUrl="true" Parameters="%1">
<SupportedFileTypes>
<FileType>"[FileExtension]"</FileType>
</SupportedFileTypes>
</FileTypeAssociation>
</Extension>
Finden Sie die vollständige Schemareferenz hier.
| Name | BESCHREIBUNG |
|---|---|
| Kategorie | Immer windows.fileTypeAssociation. |
| Name | Der Name der Dateitypzuordnung. Sie können diesen Namen verwenden, um Dateitypen zu organisieren und zu gruppieren. Der Name darf nur aus Kleinbuchstaben und ohne Leerzeichen bestehen. |
| UseUrl | Gibt an, ob Dateien direkt aus einem URL-Ziel geöffnet werden sollen. Wenn Sie diesen Wert nicht festlegen, versucht Ihre Anwendung, eine Datei mithilfe einer URL zu öffnen, wodurch das System die Datei zuerst lokal herunterlädt. |
| Die Parameter | Optionale Parameter. |
| Dateityp | Die entsprechenden Dateierweiterungen. |
Beispiel
<Package
xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
xmlns:uap3="http://schemas.microsoft.com/appx/manifest/uap/windows10/3"
IgnorableNamespaces="uap, uap3">
<Applications>
<Application>
<Extensions>
<uap:Extension Category="windows.fileTypeAssociation">
<uap3:FileTypeAssociation Name="myfiletypes" UseUrl="true" Parameters="%1">
<uap:SupportedFileTypes>
<uap:FileType>.txt</uap:FileType>
<uap:FileType>.doc</uap:FileType>
</uap:SupportedFileTypes>
</uap3:FileTypeAssociation>
</uap:Extension>
</Extensions>
</Application>
</Applications>
</Package>
Setup-Aufgaben ausführen
- Erstellen einer Firewall-Ausnahme für Ihre App
- Platzieren Sie Ihre DLL-Dateien in einen beliebigen Ordner des Pakets
Erstellen einer Firewall-Ausnahme für Ihre App
Wenn Ihre Anwendung eine Kommunikation über einen Port erfordert, können Sie Ihre Anwendung zur Liste der Firewall-Ausnahmen hinzufügen.
Hinweis
Um die Erweiterungskategorie "windows.firewallRules" zu verwenden (siehe unten), benötigt Ihr Paket die Berechtigungsstufe für "Volles Vertrauen" und die eingeschränkte Funktion. Siehe Liste eingeschränkter Funktionen.
XML-Namespace
http://schemas.microsoft.com/appx/manifest/desktop/windows10/2
Elemente und Attribute dieser Erweiterung
<Extension Category="windows.firewallRules">
<FirewallRules Executable="[executable file name]">
<Rule
Direction="[Direction]"
IPProtocol="[Protocol]"
LocalPortMin="[LocalPortMin]"
LocalPortMax="LocalPortMax"
RemotePortMin="RemotePortMin"
RemotePortMax="RemotePortMax"
Profile="[Profile]"/>
</FirewallRules>
</Extension>
Finden Sie die vollständige Schemareferenz hier.
| Name | BESCHREIBUNG |
|---|---|
| Kategorie | Immer windows.firewallRules |
| Ausführbar | Der Name der ausführbaren Datei, die Sie der Liste der Firewall-Ausnahmen hinzufügen möchten |
| Richtung | Gibt an, ob es sich bei der Regel um eine eingehende oder ausgehende Regel handelt. |
| IP-Protokoll | Das Kommunikationsprotokoll |
| LocalPortMin | Die untere Portnummer in einem Bereich lokaler Portnummern. |
| LocalPortMax | Die höchste Portnummer innerhalb eines Bereichs von lokalen Portnummern. |
| RemotePortMax | Die untere Portnummer in einem Bereich von entfernten Portnummern. |
| RemotePortMax | Die höchste Portnummer innerhalb eines Bereichs von Remoteportnummern. |
| Profil | Der Netzwerktyp |
Beispiel
<Package
xmlns:desktop2="http://schemas.microsoft.com/appx/manifest/desktop/windows10/2"
IgnorableNamespaces="desktop2">
<Extensions>
<desktop2:Extension Category="windows.firewallRules">
<desktop2:FirewallRules Executable="Contoso.exe">
<desktop2:Rule Direction="in" IPProtocol="TCP" Profile="all"/>
<desktop2:Rule Direction="in" IPProtocol="UDP" LocalPortMin="1337" LocalPortMax="1338" Profile="domain"/>
<desktop2:Rule Direction="in" IPProtocol="UDP" LocalPortMin="1337" LocalPortMax="1338" Profile="public"/>
<desktop2:Rule Direction="out" IPProtocol="UDP" LocalPortMin="1339" LocalPortMax="1340" RemotePortMin="15"
RemotePortMax="19" Profile="domainAndPrivate"/>
<desktop2:Rule Direction="out" IPProtocol="GRE" Profile="private"/>
</desktop2:FirewallRules>
</desktop2:Extension>
</Extensions>
</Package>
Platzieren Sie Ihre DLL-Dateien in einem beliebigen Ordner des Pakets.
Verwenden Sie die uap6:LoaderSearchPathOverride-Erweiterung, um bis zu fünf Ordnerpfade im App-Paket anzugeben, relativ zum Stammpfad des App-Pakets, die im Suchpfad des Loaders für die Prozesse der App verwendet werden sollen.
Die DLL-Suchreihenfolge für Windows-Apps enthält Pakete im Paketabhängigkeitsdiagramm, wenn die Pakete Ausführungsrechte besitzen. Standardmäßig umfasst dies Haupt-, optionale und Framework-Pakete, obwohl dies durch das uap6:AllowExecution-Element im Paketmanifest überschrieben werden kann.
Ein Paket, das in der DLL-Suchreihenfolge enthalten ist, enthält standardmäßig seinen effektiven Pfad . Weitere Informationen zu effektiven Pfaden finden Sie in der EffectivePath-Eigenschaft (WinRT) und der PackagePathType--Aufzählung (Win32).
Wenn ein Paket uap6:LoaderSearchPathOverrideangibt, werden diese Informationen anstelle des effektiven Pfads des Pakets verwendet.
Jedes Paket kann nur eine uap6:LoaderSearchPathOverride Erweiterung enthalten. Dies bedeutet, dass Sie eines dieser Pakete zu Ihrem Hauptpaket hinzufügen können und dann eines zu jedem Ihrer optionalen Pakete sowie den verwandten Setshinzufügen können.
XML-Namespace
http://schemas.microsoft.com/appx/manifest/uap/windows10/6
Elemente und Attribute dieser Erweiterung
Deklarieren Sie diese Erweiterung auf Paketebene ihres App-Manifests.
<Extension Category="windows.loaderSearchPathOverride">
<LoaderSearchPathOverride>
<LoaderSearchPathEntry FolderPath="[path]"/>
</LoaderSearchPathOverride>
</Extension>
| Name | BESCHREIBUNG |
|---|---|
| Kategorie | Immer windows.loaderSearchPathOverride. |
| FolderPath | Der Pfad des Ordners, der Die DLL-Dateien enthält. Geben Sie einen Pfad relativ zum Stammordner des Pakets an. Sie können bis zu fünf Pfade in einer Erweiterung angeben. Wenn das System nach Dateien im Stammordner des Pakets suchen soll, verwenden Sie eine leere Zeichenfolge für einen dieser Pfade. Fügen Sie keine doppelten Pfade hinzu, und stellen Sie sicher, dass Ihre Pfade keine Schrägstriche oder Backslashes am Anfang oder Ende enthalten. Das System durchsucht keine Unterordner. Stellen Sie daher sicher, dass sie jeden Ordner explizit auflisten, der DLL-Dateien enthält, die das System laden soll. |
Beispiel
<Package
xmlns:uap3="http://schemas.microsoft.com/appx/manifest/uap/windows10/6"
IgnorableNamespaces="uap6">
...
<Extensions>
<uap6:Extension Category="windows.loaderSearchPathOverride">
<uap6:LoaderSearchPathOverride>
<uap6:LoaderSearchPathEntry FolderPath=""/>
<uap6:LoaderSearchPathEntry FolderPath="folder1/subfolder1"/>
<uap6:LoaderSearchPathEntry FolderPath="folder2/subfolder2"/>
</uap6:LoaderSearchPathOverride>
</uap6:Extension>
</Extensions>
...
</Package>
Mit dem Datei-Explorer integrieren
Helfen Sie Benutzern, Ihre Dateien zu organisieren und auf vertraute Weise mit ihnen zu interagieren.
- Definieren, wie sich Ihre Anwendung verhält, wenn Benutzer mehrere Dateien gleichzeitig auswählen und öffnen
- Anzeigen von Dateiinhalten in einem Miniaturbild im Datei-Explorer
- Anzeigen von Dateiinhalten in einem Vorschaufenster des Datei-Explorers
- Benutzern ermöglichen, Dateien mithilfe der Spalte "Art" im Datei-Explorer zu gruppieren
- Verfügbarmachen von Dateieigenschaften zum Suchen, Index, Eigenschaftendialogfeld und Detailbereich
- Angeben eines Kontextmenühandlers für einen Dateityp
- Dateien aus Ihrem Cloud-Dienst im Datei-Explorer erscheinen lassen
Definieren, wie sich Ihre Anwendung verhält, wenn Benutzer mehrere Dateien gleichzeitig auswählen und öffnen
Geben Sie an, wie sich Ihre Anwendung verhält, wenn ein Benutzer mehrere Dateien gleichzeitig öffnet.
XML-Namespaces
http://schemas.microsoft.com/appx/manifest/uap/windows10http://schemas.microsoft.com/appx/manifest/uap/windows10/2http://schemas.microsoft.com/appx/manifest/uap/windows10/3
Elemente und Attribute dieser Erweiterung
<Extension Category="windows.fileTypeAssociation">
<FileTypeAssociation Name="[Name]" MultiSelectModel="[SelectionModel]">
<SupportedVerbs>
<Verb Id="Edit" MultiSelectModel="[SelectionModel]">Edit</Verb>
</SupportedVerbs>
<SupportedFileTypes>
<FileType>"[FileExtension]"</FileType>
</SupportedFileTypes>
</Extension>
Finden Sie die vollständige Schemareferenz hier.
| Name | BESCHREIBUNG |
|---|---|
| Kategorie | Immer windows.fileTypeAssociation. |
| Name | Der Name der Dateitypzuordnung. Sie können diesen Namen verwenden, um Dateitypen zu organisieren und zu gruppieren. Der Name darf nur aus Kleinbuchstaben und ohne Leerzeichen bestehen. |
| Mehrfachauswahlmodell | Siehe unten |
| Dateityp | Die entsprechenden Dateierweiterungen. |
MultiSelectModel-
Verpackte Desktop-Apps haben die gleichen drei Optionen wie normale Desktop-Apps.
-
Player: Ihre Anwendung wird einmal aktiviert. Alle ausgewählten Dateien werden als Argumentparameter an Ihre Anwendung übergeben. -
Single: Ihre Anwendung wird einmal für die erste ausgewählte Datei aktiviert. Andere Dateien werden ignoriert. -
Document: Für jede ausgewählte Datei wird eine neue, separate Instanz Ihrer Anwendung aktiviert.
Sie können unterschiedliche Einstellungen für verschiedene Dateitypen und Aktionen festlegen. Sie können z. B. Dokumente im Dokumentenmodus öffnen und Bilder im Playermodus.
Beispiel
<Package
xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
xmlns:uap2="http://schemas.microsoft.com/appx/manifest/uap/windows10/2"
xmlns:uap3="http://schemas.microsoft.com/appx/manifest/uap/windows10/3"
IgnorableNamespaces="uap, uap2, uap3">
<Applications>
<Application>
<Extensions>
<uap:Extension Category="windows.fileTypeAssociation">
<uap3:FileTypeAssociation Name="myfiletypes" MultiSelectModel="Document">
<uap2:SupportedVerbs>
<uap3:Verb Id="Edit" MultiSelectModel="Player">Edit</uap3:Verb>
<uap3:Verb Id="Preview" MultiSelectModel="Document">Preview</uap3:Verb>
</uap2:SupportedVerbs>
<uap:SupportedFileTypes>
<uap:FileType>.txt</uap:FileType>
</uap:SupportedFileTypes>
</uap:Extension>
</Extensions>
</Application>
</Applications>
</Package>
Wenn der Benutzer 15 oder weniger Dateien öffnet, ist die Standardauswahl für das MultiSelectModel Attribut Player. Andernfalls ist die Standardeinstellung Document. UWP-Apps werden immer als Playergestartet.
Dateiinhalte in einer Miniaturansicht im Datei-Explorer anzeigen
Ermöglichen Sie Benutzern, eine Miniaturansicht des Dateiinhalts zu sehen, wenn das Dateisymbol in mittlerer, großer oder extra großer Größe angezeigt wird.
XML-Namespace
http://schemas.microsoft.com/appx/manifest/uap/windows10http://schemas.microsoft.com/appx/manifest/uap/windows10/2http://schemas.microsoft.com/appx/manifest/uap/windows10/3http://schemas.microsoft.com/appx/manifest/desktop/windows10/2
Elemente und Attribute dieser Erweiterung
<Extension Category="windows.fileTypeAssociation">
<FileTypeAssociation Name="[Name]">
<SupportedFileTypes>
<FileType>"[FileExtension]"</FileType>
</SupportedFileTypes>
<ThumbnailHandler
Clsid ="[Clsid ]" />
</FileTypeAssociation>
</Extension>
Finden Sie die vollständige Schemareferenz hier.
| Name | BESCHREIBUNG |
|---|---|
| Kategorie | Immer windows.fileTypeAssociation. |
| Name | Der Name der Dateitypzuordnung. Sie können diesen Namen verwenden, um Dateitypen zu organisieren und zu gruppieren. Der Name darf nur aus Kleinbuchstaben und ohne Leerzeichen bestehen. |
| Dateityp | Die entsprechenden Dateierweiterungen. |
| Clsid | Die Klassen-ID Ihrer App. |
Beispiel
<Package
xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
xmlns:uap2="http://schemas.microsoft.com/appx/manifest/uap/windows10/2"
xmlns:uap3="http://schemas.microsoft.com/appx/manifest/uap/windows10/3"
xmlns:desktop2="http://schemas.microsoft.com/appx/manifest/desktop/windows10/2"
IgnorableNamespaces="uap, uap2, uap3, desktop2">
<Applications>
<Application>
<Extensions>
<uap:Extension Category="windows.fileTypeAssociation">
<uap3:FileTypeAssociation Name="myfiletypes">
<uap:SupportedFileTypes>
<uap:FileType>.bar</uap:FileType>
</uap:SupportedFileTypes>
<desktop2:ThumbnailHandler
Clsid ="20000000-0000-0000-0000-000000000001" />
</uap3:FileTypeAssociation>
</uap::Extension>
</Extensions>
</Application>
</Applications>
</Package>
Dateiinhalte im Vorschaubereich des Datei-Explorers anzeigen
Ermöglichen Sie Benutzern die Vorschau der Inhalte einer Datei im Vorschaubereich des Datei-Explorers.
XML-Namespace
http://schemas.microsoft.com/appx/manifest/uap/windows10http://schemas.microsoft.com/appx/manifest/uap/windows10/2http://schemas.microsoft.com/appx/manifest/uap/windows10/3http://schemas.microsoft.com/appx/manifest/desktop/windows10/2
Elemente und Attribute dieser Erweiterung
<Extension Category="windows.fileTypeAssociation">
<FileTypeAssociation Name="[Name]">
<SupportedFileTypes>
<FileType>"[FileExtension]"</FileType>
</SupportedFileTypes>
<DesktopPreviewHandler Clsid ="[Clsid ]" />
</FileTypeAssociation>
</Extension>
Finden Sie die vollständige Schemareferenz hier.
| Name | BESCHREIBUNG |
|---|---|
| Kategorie | Immer windows.fileTypeAssociation. |
| Name | Der Name der Dateitypzuordnung. Sie können diesen Namen verwenden, um Dateitypen zu organisieren und zu gruppieren. Der Name darf nur aus Kleinbuchstaben und ohne Leerzeichen bestehen. |
| Dateityp | Die entsprechenden Dateierweiterungen. |
| Clsid | Die Klassen-ID Ihrer App. |
Beispiel
<Package
xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
xmlns:uap2="http://schemas.microsoft.com/appx/manifest/uap/windows10/2"
xmlns:uap3="http://schemas.microsoft.com/appx/manifest/uap/windows10/3"
xmlns:desktop2="http://schemas.microsoft.com/appx/manifest/desktop/windows10/2"
IgnorableNamespaces="uap, uap2, uap3, desktop2">
<Applications>
<Application>
<Extensions>
<uap:Extension Category="windows.fileTypeAssociation">
<uap3:FileTypeAssociation Name="myfiletypes">
<uap:SupportedFileTypes>
<uap:FileType>.bar</uap:FileType>
</uap:SupportedFileTypes>
<desktop2:DesktopPreviewHandler Clsid ="20000000-0000-0000-0000-000000000001" />
</uap3:FileTypeAssociation>
</uap:Extension>
</Extensions>
</Application>
</Applications>
</Package>
Benutzern das Gruppieren von Dateien mithilfe der Spalte "Kind" im Datei-Explorer ermöglichen
Sie können dem Feld Art einen oder mehrere vordefinierte Werte für Ihre Dateitypen zuordnen.
Im Datei-Explorer können Benutzer diese Dateien mithilfe dieses Felds gruppieren. Systemkomponenten verwenden dieses Feld auch für verschiedene Zwecke wie die Indizierung.
Weitere Informationen zum Feld Kind und zu den Werten, die Sie für dieses Feld verwenden können, finden Sie unter Using Kind Names.
XML-Namespaces
http://schemas.microsoft.com/appx/manifest/uap/windows10http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities/3
Elemente und Attribute dieser Erweiterung
<Extension Category="windows.fileTypeAssociation">
<FileTypeAssociation Name="[Name]">
<SupportedFileTypes>
<FileType>"[FileExtension]"</FileType>
</SupportedFileTypes>
<KindMap>
<Kind value="[KindValue]">
</KindMap>
</FileTypeAssociation>
</Extension>
Finden Sie die vollständige Schemareferenz hier.
| Name | BESCHREIBUNG |
|---|---|
| Kategorie | Immer windows.fileTypeAssociation. |
| Name | Der Name der Dateitypzuordnung. Sie können diesen Namen verwenden, um Dateitypen zu organisieren und zu gruppieren. Der Name darf nur aus Kleinbuchstaben und ohne Leerzeichen bestehen. |
| Dateityp | Die entsprechenden Dateierweiterungen. |
| Wert | Ein gültiger Kind-Wert |
Beispiel
<Package
xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities/3"
IgnorableNamespaces="uap, rescap">
<Applications>
<Application>
<Extensions>
<uap:Extension Category="windows.fileTypeAssociation">
<uap:FileTypeAssociation Name="mediafiles">
<uap:SupportedFileTypes>
<uap:FileType>.m4a</uap:FileType>
<uap:FileType>.mta</uap:FileType>
</uap:SupportedFileTypes>
<rescap:KindMap>
<rescap:Kind value="Item">
<rescap:Kind value="Communications">
<rescap:Kind value="Task">
</rescap:KindMap>
</uap:FileTypeAssociation>
</uap:Extension>
</Extensions>
</Application>
</Applications>
</Package>
Verfügbarmachen von Dateieigenschaften für die Suche, den Index, das Eigenschaftendialogfeld und den Detailbereich
XML-Namespace
http://schemas.microsoft.com/appx/manifest/uap/windows10http://schemas.microsoft.com/appx/manifest/uap/windows10/3http://schemas.microsoft.com/appx/manifest/desktop/windows10/2
Elemente und Attribute dieser Erweiterung
<uap:Extension Category="windows.fileTypeAssociation">
<uap:FileTypeAssociation Name="[Name]">
<SupportedFileTypes>
<FileType>.bar</FileType>
</SupportedFileTypes>
<DesktopPropertyHandler Clsid ="[Clsid]"/>
</uap:FileTypeAssociation>
</uap:Extension>
Finden Sie die vollständige Schemareferenz hier.
| Name | BESCHREIBUNG |
|---|---|
| Kategorie | Immer windows.fileTypeAssociation. |
| Name | Der Name der Dateitypzuordnung. Sie können diesen Namen verwenden, um Dateitypen zu organisieren und zu gruppieren. Der Name darf nur aus Kleinbuchstaben und ohne Leerzeichen bestehen. |
| Dateityp | Die entsprechenden Dateierweiterungen. |
| Clsid | Die Klassen-ID Ihrer App. |
Beispiel
<Package
xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
xmlns:uap3="http://schemas.microsoft.com/appx/manifest/uap/windows10/3"
xmlns:desktop2="http://schemas.microsoft.com/appx/manifest/desktop/windows10/2"
IgnorableNamespaces="uap, uap3, desktop2">
<Applications>
<Application>
<Extensions>
<uap:Extension Category="windows.fileTypeAssociation">
<uap3:FileTypeAssociation Name="myfiletypes">
<uap:SupportedFileTypes>
<uap:FileType>.bar</uap:FileType>
</uap:SupportedFileTypes>
<desktop2:DesktopPropertyHandler Clsid ="20000000-0000-0000-0000-000000000001"/>
</uap3:FileTypeAssociation>
</uap:Extension>
</Extensions>
</Application>
</Applications>
</Package>
Angeben eines Kontextmenühandlers für einen Dateityp
Wenn Ihre Desktopanwendung einen Kontextmenühandler definiert, verwenden Sie diese Erweiterung, um den Menühandler zu registrieren.
XML-Namespaces
http://schemas.microsoft.com/appx/manifest/foundation/windows10http://schemas.microsoft.com/appx/manifest/desktop/windows10/4
Elemente und Attribute dieser Erweiterung
<Extensions>
<com:Extension Category="windows.comServer">
<com:ComServer>
<com:SurrogateServer AppId="[AppID]" DisplayName="[DisplayName]">
<com:Class Id="[Clsid]" Path="[Path]" ThreadingModel="[Model]"/>
</com:SurrogateServer>
</com:ComServer>
</com:Extension>
<desktop4:Extension Category="windows.fileExplorerContextMenus">
<desktop4:FileExplorerContextMenus>
<desktop4:ItemType Type="[Type]">
<desktop4:Verb Id="[ID]" Clsid="[Clsid]" />
</desktop4:ItemType>
</desktop4:FileExplorerContextMenus>
</desktop4:Extension>
</Extensions>
Die vollständige Schemareferenz finden Sie hier: com:ComServer und desktop4:FileExplorerContextMenus.
Anweisungen
Führen Sie die folgenden Anweisungen aus, um den Kontextmenühandler zu registrieren.
In Ihrer Desktopanwendung setzen Sie einen Kontextmenühandler um, indem Sie die IExplorerCommand-- oder IExplorerCommandState--Schnittstelle umsetzen. Ein Beispiel finden Sie im ExplorerCommandVerb Codebeispiel. Stellen Sie sicher, dass Sie eine Klassen-GUID für jedes Ihrer Implementierungsobjekte definieren. Der folgende Code definiert beispielsweise eine Klassen-ID für eine Implementierung von IExplorerCommand.
class __declspec(uuid("00001111-aaaa-2222-bbbb-3333cccc4444")) CExplorerCommandVerb;Geben Sie im Paketmanifest eine com:ComServer- Anwendungserweiterung an, die einen COM-Ersatzserver mit der Klassen-ID Ihrer Implementierung des Kontextmenühandlers registriert.
<com:Extension Category="windows.comServer"> <com:ComServer> <com:SurrogateServer AppId="00001111-aaaa-2222-bbbb-3333cccc4444" DisplayName="ContosoHandler"> <com:Class Id="00001111-aaaa-2222-bbbb-3333cccc4444" Path="ExplorerCommandVerb.dll" ThreadingModel="STA"/> </com:SurrogateServer> </com:ComServer> </com:Extension>Geben Sie im Paketmanifest eine Desktop4:FileExplorerContextMenus-Anwendungserweiterung an, die die Implementierung des Kontextmenühandlers registriert.
<desktop4:Extension Category="windows.fileExplorerContextMenus"> <desktop4:FileExplorerContextMenus> <desktop4:ItemType Type=".rar"> <desktop4:Verb Id="Command1" Clsid="00001111-aaaa-2222-bbbb-3333cccc4444" /> </desktop4:ItemType> </desktop4:FileExplorerContextMenus> </desktop4:Extension>
Beispiel
<Package
xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10"
xmlns:desktop4="http://schemas.microsoft.com/appx/manifest/desktop/windows10/4"
xmlns:com="http://schemas.microsoft.com/appx/manifest/com/windows10"
IgnorableNamespaces="desktop4">
<Applications>
<Application>
<Extensions>
<com:Extension Category="windows.comServer">
<com:ComServer>
<com:SurrogateServer AppId="00001111-aaaa-2222-bbbb-3333cccc4444" DisplayName="ContosoHandler">
<com:Class Id="00001111-aaaa-2222-bbbb-3333cccc4444" Path="ExplorerCommandVerb.dll" ThreadingModel="STA"/>
</com:SurrogateServer>
</com:ComServer>
</com:Extension>
<desktop4:Extension Category="windows.fileExplorerContextMenus">
<desktop4:FileExplorerContextMenus>
<desktop4:ItemType Type=".contoso">
<desktop4:Verb Id="Command1" Clsid="00001111-aaaa-2222-bbbb-3333cccc4444" />
</desktop4:ItemType>
</desktop4:FileExplorerContextMenus>
</desktop4:Extension>
</Extensions>
</Application>
</Applications>
</Package>
Festlegen, dass Dateien aus Ihrem Clouddienst im Datei-Explorer angezeigt werden
Registrieren Sie die Handler, die Sie in Ihrer Anwendung implementieren. Sie können auch Kontextmenüoptionen hinzufügen, die angezeigt werden, wenn Benutzer mit der rechten Maustaste auf Ihre cloudbasierten Dateien im Datei-Explorer klicken.
XML-Namespace
http://schemas.microsoft.com/appx/manifest/desktop/windows10
Elemente und Attribute dieser Erweiterung
<Extension Category="windows.cloudfiles" >
<CloudFiles IconResource="[Icon]">
<CustomStateHandler Clsid ="[Clsid]"/>
<ThumbnailProviderHandler Clsid ="[Clsid]"/>
<ExtendedPropertyhandler Clsid ="[Clsid]"/>
<CloudFilesContextMenus>
<Verb Id ="Command3" Clsid= "[GUID]">[Verb Label]</Verb>
</CloudFilesContextMenus>
</CloudFiles>
</Extension>
| Name | BESCHREIBUNG |
|---|---|
| Kategorie | Immer windows.cloudfiles. |
| Symbolressource | Das Symbol, das Ihren Clouddateianbieterdienst darstellt. Dieses Symbol wird im Navigationsbereich des Datei-Explorers angezeigt. Benutzer wählen dieses Symbol aus, um Dateien aus Ihrem Clouddienst anzuzeigen. |
| CustomStateHandler Clsid | Die Klassen-ID der Anwendung, die den CustomStateHandler implementiert. Das System verwendet diese Klassen-ID, um benutzerdefinierte Zustände und Spalten für Clouddateien anzufordern. |
| ThumbnailProviderHandler Clsid | Die Klassen-ID der Anwendung, die den ThumbnailProviderHandler implementiert. Das System verwendet diese Klassen-ID, um Miniaturansichten für Clouddateien anzufordern. |
| ExtendedPropertyHandler CLSID | Die Klassen-ID der Anwendung, die den ExtendedPropertyHandler implementiert. Das System verwendet diese Klassen-ID, um erweiterte Eigenschaften für eine Clouddatei anzufordern. |
| Verb | Der Name, der im Kontextmenü des Datei-Explorers für Dateien angezeigt wird, die von Ihrem Clouddienst bereitgestellt werden. |
| Id | Die eindeutige ID des Verbs. |
Beispiel
<Package
xmlns:desktop="http://schemas.microsoft.com/appx/manifest/desktop/windows10"
IgnorableNamespaces="desktop">
<Applications>
<Application>
<Extensions>
<Extension Category="windows.cloudfiles" >
<CloudFiles IconResource="images\Wide310x150Logo.png">
<CustomStateHandler Clsid ="20000000-0000-0000-0000-000000000001"/>
<ThumbnailProviderHandler Clsid ="20000000-0000-0000-0000-000000000001"/>
<ExtendedPropertyhandler Clsid ="20000000-0000-0000-0000-000000000001"/>
<desktop:CloudFilesContextMenus>
<desktop:Verb Id ="keep" Clsid=
"20000000-0000-0000-0000-000000000001">
Always keep on this device</desktop:Verb>
</desktop:CloudFilesContextMenus>
</CloudFiles>
</Extension>
</Extensions>
</Application>
</Applications>
</Package>
Starten Sie Ihre Anwendung auf unterschiedliche Weise
- Starten Sie Ihre Anwendung mithilfe eines Protokolls
- Starten Sie Ihre Anwendung mithilfe eines Alias
- Starten einer ausführbaren Datei, wenn Benutzer sich bei Windows anmelden
- Ermöglichen, dass Benutzer Ihre Anwendung starten, wenn sie ein Gerät mit ihrem PC verbinden
- Automatisch neu starten, nachdem ein Update aus dem Microsoft Store erhalten wurde
Starten Sie Ihre Anwendung, indem Sie ein Protokoll verwenden
Protokollzuordnungen können es anderen Programmen und Systemkomponenten ermöglichen, mit Ihrer verpackten App zu arbeiten. Wenn Die verpackte Anwendung mithilfe eines Protokolls gestartet wird, können Sie bestimmte Parameter angeben, die an die Aktivierungsereignisargumente übergeben werden sollen, damit sie sich entsprechend verhalten kann. Parameter werden nur für verpackte, vollständig vertrauenswürdige Apps unterstützt. UWP-Apps können keine Parameter verwenden.
XML-Namespace
http://schemas.microsoft.com/appx/manifest/uap/windows10/3
Elemente und Attribute dieser Erweiterung
<Extension
Category="windows.protocol">
<Protocol
Name="[Protocol name]"
Parameters="[Parameters]" />
</Extension>
Finden Sie die vollständige Schemareferenz hier.
| Name | BESCHREIBUNG |
|---|---|
| Kategorie | Immer windows.protocol. |
| Name | Der Name des Protokolls. |
| Die Parameter | Die Liste der Parameter und Werte, die beim Aktivieren der Anwendung als Ereignisargumente an Ihre Anwendung übergeben werden sollen. Wenn eine Variable einen Dateipfad enthalten kann, schließen Sie den Parameterwert in Anführungszeichen um. Dadurch werden Probleme vermieden, die in Fällen auftreten, in denen der Pfad Leerzeichen enthält. |
Beispiel
<Package
xmlns:uap3="http://schemas.microsoft.com/appx/manifest/uap/windows10/3"
xmlns:desktop="http://schemas.microsoft.com/appx/manifest/desktop/windows10"
IgnorableNamespaces="uap3, desktop">
<Applications>
<Application>
<Extensions>
<uap3:Extension
Category="windows.protocol">
<uap3:Protocol
Name="myapp-cmd"
Parameters="/p "%1"" />
</uap3:Extension>
</Extensions>
</Application>
</Applications>
</Package>
Starten Sie Ihre Anwendung mithilfe eines Alias
Benutzer und andere Prozesse können einen Alias verwenden, um Ihre Anwendung zu starten, ohne den vollständigen Pfad zu Ihrer App angeben zu müssen. Sie können diesen Aliasnamen angeben.
XML-Namespaces
http://schemas.microsoft.com/appx/manifest/uap/windows10/3http://schemas.microsoft.com/appx/manifest/desktop/windows10
Elemente und Attribute dieser Erweiterung
<uap3:Extension
Category="windows.appExecutionAlias"
Executable="[ExecutableName]"
EntryPoint="Windows.FullTrustApplication">
<uap3:AppExecutionAlias>
<desktop:ExecutionAlias Alias="[AliasName]" />
</uap3:AppExecutionAlias>
</uap3:Extension>
| Name | BESCHREIBUNG |
|---|---|
| Kategorie | Immer windows.appExecutionAlias. |
| Ausführbar | Der relative Pfad zur ausführbaren Datei, die gestartet wird, wenn der Alias aufgerufen wird. |
| Alias | Der kurze Name für Ihre App. Sie muss immer mit der Erweiterung ".exe" enden. Sie können nur einen einzelnen App-Ausführungsalias für jede Anwendung im Paket angeben. Wenn sich mehrere Apps für denselben Alias registrieren, ruft das System die letzte App auf, die registriert wurde. Stellen Sie daher sicher, dass sie einen eindeutigen Alias auswählen, den andere Apps nicht außer Kraft setzen können. |
Beispiel
<Package
xmlns:uap3="http://schemas.microsoft.com/appx/manifest/uap/windows10/3"
IgnorableNamespaces="uap3">
<Applications>
<Application>
<Extensions>
<uap3:Extension
Category="windows.appExecutionAlias"
Executable="exes\launcher.exe"
EntryPoint="Windows.FullTrustApplication">
<uap3:AppExecutionAlias>
<desktop:ExecutionAlias Alias="Contoso.exe" />
</uap3:AppExecutionAlias>
</uap3:Extension>
</Extensions>
</Application>
</Applications>
</Package>
Finden Sie die vollständige Schemareferenz hier.
Starten einer ausführbaren Datei, wenn Benutzer sich bei Windows anmelden
Startaufgaben ermöglichen es Ihrer Anwendung, eine ausführbare Datei automatisch auszuführen, wenn sich ein Benutzer anmeldet.
Hinweis
Der Benutzer muss die Anwendung mindestens einmal starten, um diese Startaufgabe zu registrieren.
Ihre Anwendung kann mehrere Startaufgaben deklarieren. Jede Aufgabe wird unabhängig gestartet. Alle Startaufgaben werden im Task-Manager unter der Registerkarte "Start " mit dem Namen angezeigt, den Sie im Manifest Ihrer App und im Symbol Ihrer App angeben. Der Task-Manager analysiert automatisch die Auswirkungen auf den Start Ihrer Aufgaben.
Benutzer können die Startaufgabe Ihrer App mithilfe des Task-Managers manuell deaktivieren. Wenn ein Benutzer eine Aufgabe deaktiviert, können Sie sie nicht programmgesteuert erneut aktivieren.
XML-Namespace
http://schemas.microsoft.com/appx/manifest/desktop/windows10
Elemente und Attribute dieser Erweiterung
<Extension
Category="windows.startupTask"
Executable="[ExecutableName]"
EntryPoint="Windows.FullTrustApplication">
<StartupTask
TaskId="[TaskID]"
Enabled="true"
DisplayName="[DisplayName]" />
</Extension>
| Name | BESCHREIBUNG |
|---|---|
| Kategorie | Immer windows.startupTask. |
| Ausführbar | Der relative Pfad zur ausführbaren Datei, die gestartet werden soll. |
| Aufgaben-ID | Ein eindeutiger Bezeichner für Ihre Aufgabe. Mit diesem Bezeichner kann Ihre Anwendung die APIs in der Windows.ApplicationModel.StartupTask-Klasse aufrufen, um eine Startaufgabe programmgesteuert zu aktivieren oder zu deaktivieren. |
| Aktiviert | Gibt an, ob die Aufgabe zunächst aktiviert oder deaktiviert ist. Aktivierte Aufgaben werden ausgeführt, wenn sich der Benutzer das nächste Mal anmeldet (es sei denn, der Benutzer deaktiviert sie). |
| Anzeigename | Der Name der Aufgabe, die im Task-Manager angezeigt wird. Sie können diese Zeichenfolge mithilfe von ms-resource. |
Beispiel
<Package
xmlns:desktop="http://schemas.microsoft.com/appx/manifest/desktop/windows10"
IgnorableNamespaces="desktop">
<Applications>
<Application>
<Extensions>
<desktop:Extension
Category="windows.startupTask"
Executable="bin\MyStartupTask.exe"
EntryPoint="Windows.FullTrustApplication">
<desktop:StartupTask
TaskId="MyStartupTask"
Enabled="true"
DisplayName="My App Service" />
</desktop:Extension>
</Extensions>
</Application>
</Applications>
</Package>
Ermöglichen, dass Benutzer Ihre Anwendung starten, wenn sie ein Gerät mit ihrem PC verbinden
Die automatische Wiedergabe kann Ihre Anwendung als Option darstellen, wenn ein Benutzer ein Gerät mit dem PC verbindet.
XML-Namespace
http://schemas.microsoft.com/appx/manifest/desktop/windows10/3
Elemente und Attribute dieser Erweiterung
<Extension Category="windows.autoPlayHandler">
<AutoPlayHandler>
<InvokeAction ActionDisplayName="[action string]" ProviderDisplayName="[name of your app/service]">
<Content ContentEvent="[Content event]" Verb="[any string]" DropTargetHandler="[Clsid]" />
<Content ContentEvent="[Content event]" Verb="[any string]" Parameters="[Initialization parameter]"/>
<Device DeviceEvent="[Device event]" HWEventHandler="[Clsid]" InitCmdLine="[Initialization parameter]"/>
</InvokeAction>
</AutoPlayHandler>
| Name | BESCHREIBUNG |
|---|---|
| Kategorie | Immer windows.autoPlayHandler. |
| Aktionsanzeigenname | Eine Zeichenfolge, die die Aktion darstellt, die Benutzer mit einem Gerät ausführen können, das sie mit einem PC verbinden (z. B. "Dateien importieren" oder "Video wiedergeben"). |
| Anbieteranzeigename | Eine Zeichenfolge, die Ihre Anwendung oder Ihren Dienst darstellt (z. B. "Contoso-Videoplayer"). |
| Inhaltsereignis | Der Name eines Inhaltsereignisses, das dazu führt, dass Benutzer mit Ihrem ActionDisplayName und ProviderDisplayNamebenachrichtigt werden. Ein Inhaltsereignis wird ausgelöst, wenn ein Volumegerät wie z. B. eine Kamera-Speicherkarte, ein USB-Stick oder eine DVD in den PC eingefügt wird. Hier finden Sie die vollständige Liste dieser Ereignisse. |
| Verb | Die Verb-Einstellung identifiziert einen Wert, der für die ausgewählte Option an Ihre Anwendung übergeben wird. Sie können mehrere Startaktionen für ein AutoPlay-Ereignis angeben und die Einstellung des Verbs verwenden, um zu bestimmen, welche Option ein Benutzer für Ihre App ausgewählt hat. Sie können feststellen, welche Option der Benutzer ausgewählt hat, indem Sie die Eigenschaft 'verb' der an Ihre App übergebenen Startereignisargumente überprüfen. Sie können einen beliebigen Wert für die Verb-Einstellung verwenden, außer "open", welcher reserviert ist. |
| DropTargetHandler | Die Klassen-ID der Anwendung, die die IDropTarget-Schnittstelle implementiert. Dateien aus dem Wechselmedium werden an die Drop-Methode Ihrer IDropTarget Implementierung übergeben. |
| Die Parameter | Sie müssen die IDropTarget Schnittstelle nicht für alle Inhaltsereignisse implementieren. Für jedes Inhaltsereignis könnten Sie Befehlszeilenparameter bereitstellen, anstatt die IDropTarget- Schnittstelle zu implementieren. Für diese Ereignisse startet AutoPlay Ihre Anwendung mithilfe dieser Befehlszeilenparameter. Sie können diese Parameter im Initialisierungscode Ihrer App verarbeiten, um zu ermitteln, ob sie von AutoPlay gestartet wurde, und anschließend Ihre eigene Implementierung anzubieten. |
| Geräteereignis | Der Name eines Geräteereignisses, das bewirkt, dass Benutzer mit Ihrem ActionDisplayName und ProviderDisplayNameaufgefordert werden. Ein Geräteereignis wird ausgelöst, wenn ein Gerät mit dem PC verbunden ist. Geräteereignisse beginnen mit der Zeichenfolge WPD, und Sie finden sie hieraufgeführt. |
| HWEventHandler | Die Klassen-ID der Anwendung, die die IHWEventHandler Schnittstelle implementiert. |
| InitCmdLine | Der Zeichenfolgenparameter, den Sie an die Initialize Methode der IHWEventHandler Schnittstelle übergeben möchten. |
Beispiel
<Package
xmlns:desktop3="http://schemas.microsoft.com/appx/manifest/desktop/windows10/3"
IgnorableNamespaces="desktop3">
<Applications>
<Application>
<Extensions>
<desktop3:Extension Category="windows.autoPlayHandler">
<desktop3:AutoPlayHandler>
<desktop3:InvokeAction ActionDisplayName="Import my files" ProviderDisplayName="ms-resource:AutoPlayDisplayName">
<desktop3:Content ContentEvent="ShowPicturesOnArrival" Verb="show" DropTargetHandler="CD041BAE-0DEA-4472-9B7B-C98043D26EA8"/>
<desktop3:Content ContentEvent="PlayVideoFilesOnArrival" Verb="play" Parameters="%1" />
<desktop3:Device DeviceEvent="WPD\ImageSource" HWEventHandler="CD041BAE-0DEA-4472-9B7B-C98043D26EA8" InitCmdLine="/autoplay"/>
</desktop3:InvokeAction>
</desktop3:AutoPlayHandler>
</Extensions>
</Application>
</Applications>
</Package>
Automatisch neu starten, nachdem ein Update aus dem Microsoft Store empfangen wurde
Wenn Ihre Anwendung geöffnet ist, wenn Benutzer ein Update dafür installieren, wird die Anwendung geschlossen.
Wenn diese Anwendung nach Abschluss des Updates neu gestartet werden soll, rufen Sie die RegisterApplicationRestart-Funktion in jedem Prozess auf, den Sie neu starten möchten.
Jedes aktive Fenster in Ihrer Anwendung empfängt eine WM_QUERYENDSESSION-Nachricht. An diesem Punkt kann Ihre Anwendung die RegisterApplicationRestart-Funktion erneut aufrufen, um die Befehlszeile bei Bedarf zu aktualisieren.
Wenn jedes aktive Fenster in Ihrer Anwendung die WM_ENDSESSION Nachricht empfängt, sollte Ihre Anwendung Daten speichern und herunterfahren.
Hinweis
Ihre aktiven Fenster erhalten auch die WM_CLOSE Nachricht, falls die Anwendung die WM_ENDSESSION Nachricht nicht behandelt.
An diesem Punkt hat Ihre Anwendung 30 Sekunden Zeit, um ihre eigenen Prozesse zu schließen, oder die Plattform beendet sie kraftvoll.
Nach Abschluss des Updates wird die Anwendung neu gestartet.
Arbeiten mit anderen Anwendungen
Integration in andere Apps, Starten anderer Prozesse oder Freigeben von Informationen.
- Lassen Sie Ihre Anwendung als Druckziel in Anwendungen erscheinen, die das Drucken unterstützen
- Freigeben von Schriftarten für andere Windows-Anwendungen
- Starten eines Win32-Prozesses aus einer UWP-App (Universelle Windows-Plattform)
Stellen Sie sicher, dass Ihre Anwendung als Druckziel in Anwendungen angezeigt wird, die das Drucken unterstützen
Wenn Benutzer Daten aus einer anderen Anwendung wie dem Editor drucken möchten, können Sie Ihre Anwendung als Druckziel in der Liste der verfügbaren Druckziele der Anwendung anzeigen lassen.
Sie müssen Ihre Anwendung so ändern, dass sie Druckdaten im XPS-Format (XML Paper Specification) empfängt.
XML-Namespaces
http://schemas.microsoft.com/appx/manifest/desktop/windows10/2
Elemente und Attribute dieser Erweiterung
<Extension Category="windows.appPrinter">
<AppPrinter
DisplayName="[DisplayName]"
Parameters="[Parameters]" />
</Extension>
Finden Sie die vollständige Schemareferenz hier.
| Name | BESCHREIBUNG |
|---|---|
| Kategorie | Immer windows.appPrinter. |
| Anzeigename | Der Name, der in der Liste der Druckziele für eine App angezeigt werden soll. |
| Die Parameter | Alle Parameter, die Ihre Anwendung benötigt, um die Anforderung ordnungsgemäß zu verarbeiten. |
Beispiel
<Package
xmlns:desktop2="http://schemas.microsoft.com/appx/manifest/desktop/windows10/2"
IgnorableNamespaces="desktop2">
<Applications>
<Application>
<Extensions>
<desktop2:Extension Category="windows.appPrinter">
<desktop2:AppPrinter
DisplayName="Send to Contoso"
Parameters="/insertdoc %1" />
</desktop2:Extension>
</Extensions>
</Application>
</Applications>
</Package>
Hier finden Sie ein Beispiel, das diese Erweiterung verwendet
Freigeben von Schriftarten für andere Windows-Anwendungen
Teilen Sie Ihre benutzerdefinierten Schriftarten mit anderen Windows-Anwendungen.
Hinweis
Bevor Sie eine App übermitteln können, die diese Erweiterung an den Store verwendet, müssen Sie zuerst eine Genehmigung vom Store-Team erhalten. Um eine Genehmigung zu erhalten, wechseln Sie zu https://aka.ms/storesupport, klicken Sie auf "Kontaktieren Sie uns", und wählen Sie optionen aus, die für das Übermitteln von Apps an das Dashboard relevant sind. Dieser Genehmigungsprozess trägt dazu bei, sicherzustellen, dass es keine Konflikte zwischen Schriftarten gibt, die von Ihrer App installiert sind, und Schriftarten, die mit dem Betriebssystem installiert sind. Wenn Sie keine Genehmigung erhalten, erhalten Sie beim Übermitteln der App eine Fehlermeldung wie die folgende: "Fehler bei der Überprüfung der Paketakzeptanz: Sie können keine Erweiterung "windows.sharedFonts" mit diesem Konto verwenden. Wenden Sie sich an unser Supportteam, wenn Sie Berechtigungen für die Verwendung dieser Erweiterung anfordern möchten."
XML-Namespaces
http://schemas.microsoft.com/appx/manifest/uap/windows10/4
Elemente und Attribute dieser Erweiterung
<Extension Category="windows.sharedFonts">
<SharedFonts>
<Font File="[FontFile]" />
</SharedFonts>
</Extension>
Finden Sie die vollständige Schemareferenz hier.
| Name | BESCHREIBUNG |
|---|---|
| Kategorie | Immer windows.sharedFonts. |
| Datei | Die Datei, die die Schriftarten enthält, die Sie freigeben möchten. |
Beispiel
<Package
xmlns:uap4="http://schemas.microsoft.com/appx/manifest/uap/windows10/4"
IgnorableNamespaces="uap4">
<Applications>
<Application>
<Extensions>
<uap4:Extension Category="windows.sharedFonts">
<uap4:SharedFonts>
<uap4:Font File="Fonts\JustRealize.ttf" />
<uap4:Font File="Fonts\JustRealizeBold.ttf" />
</uap4:SharedFonts>
</uap4:Extension>
</Extensions>
</Application>
</Applications>
</Package>
Starten eines Win32-Prozesses aus einer UWP-App (Universelle Windows-Plattform)
Starten Sie einen Win32-Prozess, der mit voller Vertrauenswürdigkeit ausgeführt wird.
XML-Namespaces
http://schemas.microsoft.com/appx/manifest/desktop/windows10
Elemente und Attribute dieser Erweiterung
<Extension Category="windows.fullTrustProcess" Executable="[executable file]">
<FullTrustProcess>
<ParameterGroup GroupId="[GroupID]" Parameters="[Parameters]"/>
</FullTrustProcess>
</Extension>
| Name | BESCHREIBUNG |
|---|---|
| Kategorie | Immer windows.fullTrustProcess. |
| Gruppen-ID | Eine Zeichenfolge, die einen Satz von Parametern identifiziert, die Sie an die ausführbare Datei übergeben möchten. |
| Die Parameter | Parameter, die Sie an die ausführbare Datei übergeben möchten. |
Beispiel
<Package xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10"
xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
xmlns:rescap=
"http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"
xmlns:desktop="http://schemas.microsoft.com/appx/manifest/desktop/windows10">
...
<Capabilities>
<rescap:Capability Name="runFullTrust"/>
</Capabilities>
<Applications>
<Application>
<Extensions>
<desktop:Extension Category="windows.fullTrustProcess" Executable="fulltrustprocess.exe">
<desktop:FullTrustProcess>
<desktop:ParameterGroup GroupId="SyncGroup" Parameters="/Sync"/>
<desktop:ParameterGroup GroupId="OtherGroup" Parameters="/Other"/>
</desktop:FullTrustProcess>
</desktop:Extension>
</Extensions>
</Application>
</Applications>
</Package>
Diese Erweiterung kann nützlich sein, wenn Sie eine Benutzeroberfläche für die universelle Windows-Plattform erstellen möchten, die auf allen Geräten ausgeführt wird, aber Sie möchten, dass Komponenten Ihrer Win32-Anwendung weiterhin voll vertrauenswürdig ausgeführt werden.
Erstellen Sie einfach ein Windows-App-Paket für Ihre Win32-App. Fügen Sie diese Erweiterung dann der Paketdatei Ihrer UWP-App hinzu. Diese Erweiterungen geben an, dass Sie eine ausführbare Datei im Windows-App-Paket starten möchten. Wenn Sie zwischen Ihrer UWP-App und Ihrer Win32-App kommunizieren möchten, können Sie dazu einen oder mehrere App-Dienste einrichten. Weitere Informationen zu diesem Szenario finden Sie hier.
Nächste Schritte
Haben Sie Fragen? Fragen Sie uns auf Stack Overflow. Unser Team überwacht diese Etiketten. Sie können uns auch hier fragen.
Windows developer