Anwendung (Windows 10)

Stellt eine App dar, die einen Teil der im Paket bereitgestellten Funktionen oder alle umfasst.

Elementhierarchie

<Paket>

    <Anwendungen>

         <Anwendung>

Syntax

<Application
  EntryPoint? = 'See the Attributes table for more info.'
  Executable?
  uap10:HostId?
  Id
  uap10:Parameters?
  ResourceGroup?
  uap10:RuntimeBehavior?
  StartPage?
  desktop4:Subsystem?
  uap10:Subsystem?
  desktop4:SupportsMultipleInstances?
  uap10:SupportsMultipleInstances?
  uap10:TrustLevel?
  uap16:BaseNamedObjectsIsolation?
  uap17:BaseNamedObjectsIsolation?
  desktop11:AppLifecycleBehavior?

  <!-- Child elements -->
  uap:ApplicationContentUriRules?
  Extensions?
  uap7:Properties
  uap:VisualElements

</Application>

Schlüssel

? optional (null oder 1)
& Interleave Connector (kann in beliebiger Reihenfolge auftreten)

Attribute und Elemente

Attribute

attribute BESCHREIBUNG Datentyp Erforderlich Standardwert
EntryPoint Die aktivierungsfähige Klassen-ID (z. B. "Office.Winword.Class") oder "windows.fullTrustApplication" oder "windows.partialTrustApplication". Wenn Sie EntryPoint angeben, müssen Sie auch das ausführbare Attribut angeben. Wenn Sie EntryPoint angeben, dürfen Sie das StartPage-Attribut nicht angeben. Eine Zeichenfolge zwischen 1 und 256 Zeichen, die die Aufgabe darstellt, die die Erweiterung behandelt. Dies ist normalerweise der vollständig namespacequalifizierte Name eines Windows-Runtime Typs. Es kann sich jedoch um einen der speziellen Werte "windows.fullTrustApplication" oder "windows.partialTrustApplication" handeln. Wenn EntryPoint nicht angegeben ist, wird stattdessen der für die App definierte EntryPoint verwendet. No
Ausführbare Datei Die standardmäßige ausführbare Startdatei für die App. Die angegebene Datei muss im Paket vorhanden sein. Bei älteren Systemen (ausführliche Informationen finden Sie im Abschnitt Hinweise) müssen Sie auch das EntryPoint-Attribut angeben, wenn Sie Ausführbares Element angeben. Wenn Sie Ausführbare Datei angeben, dürfen Sie dasStartPage-Attribut nicht angeben. Eine Zeichenfolge zwischen 1 und 256 Zeichen länge, die mit und enden .exe muss und nicht die folgenden Zeichen enthalten darf: <, , :>, ", , ?|oder *. No
uap10:HostId Die App-ID der Host-App für die aktuelle App. Dieses Attribut wird für gehostete Apps verwendet. Eine alphanumerische Zeichenfolge zwischen 1 und 255 Zeichen. Muss mit einem Buchstaben beginnen. No
Id Der eindeutige Bezeichner der Anwendung im Paket. Dieser Wert wird manchmal als relative App-ID für das Paket (Package relative app ID, PRAID) bezeichnet. Die ID ist innerhalb des Pakets eindeutig, aber nicht global. In einem anderen Paket im System kann die gleiche ID verwendet werden. Dieselbe ID kann nicht mehr als einmal im selben Paket verwendet werden. Wenn Sie eine Visual Studio-Vorlage verwenden, ist der Standardwert dieses Attributs App. Entwickler sollten dies manuell im Manifest ändern. Der Bezeichner der App sollte nicht geändert werden, nachdem die App im Microsoft Store veröffentlicht wurde. Dadurch wird die Position der Kachel auf dem Startbildschirm unterbrochen. Eine ASCII-Zeichenfolge zwischen 1 und 64 Zeichen länge. Diese Zeichenfolge enthält alphanumerische Felder, die durch Punkte getrennt sind. Jedes Feld muss mit einem ASCII-Buchstaben beginnen. Sie können diese nicht als Feldwerte verwenden: CON, PRN, AUX, NUL, COM1, COM2, COM3, COM4, COM5, COM6, COM7, COM8, COM9, LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8 und LPT9. Yes
uap10:Parameter Enthält Befehlszeilenparameter, die an die App übergeben werden sollen. Nur für Desktop-Apps mit Paketidentität unterstützt (siehe Übersicht über die Bereitstellung). Eine Zeichenfolge zwischen 1 und 32767 Zeichen länge mit einem Zeichen ohne Leerzeichen am Anfang und Ende. No
ResourceGroup Ein Tag zum Gruppieren von Erweiterungsaktivierungen für Ressourcenverwaltungszwecke (z. B. CPU und Arbeitsspeicher). Weitere Informationen finden Sie im Abschnitt Hinweise in Application@ResourceGroup. Eine alphanumerische Zeichenfolge zwischen 1 und 255 Zeichen. Muss mit einem Buchstaben beginnen. No
uap10:RuntimeBehavior Gibt das Laufzeitverhalten der App an.

"packagedClassicApp" – eine WinUI 3-App oder eine Desktop-Brücke-App (Centennial). Für eine WinUI 3-App wird normalerweise ein TrustLevel von "mediumIL" verwendet (aber "appContainer" ist auch eine Option).

"win32App" – jede andere Art von Win32-App, einschließlich einer App, die mit einem externen Speicherort gepackt ist. Wird normalerweise mit einem TrustLevel von "mediumIL" verwendet (aber "appContainer" ist auch eine Option).

"windowsApp" – eine Universelle Windows-Plattform-App (UWP). Wird immer mit einem TrustLevel von "appContainer" verwendet.

Alle haben gemeinsame Eigenschaften (einige werden in appxmanifest.xmldeklariert) und als Prozess mit Paketidentität und Anwendungsidentität ausgeführt. Sie können sich diese als zwei Gruppen vorstellen. Eine Gruppe sind UWP-Apps ("windowsApp"); die andere ist Windows .exes mit Standard oder WinMain ("packagedClassicApp" oder "win32App"). Diese zweite Gruppe wird auch als Desktop-Apps bezeichnet.
Eine Zeichenfolge mit einem der folgenden Werte: "packagedClassicApp", "win32App" oder "windowsApp". No
StartPage Die Webseite, die den Erweiterungspunkt behandelt. Eine Zeichenfolge mit einem Wert zwischen 1 und 256 Zeichen Länge, die die folgenden Zeichen nicht enthalten kann: <, >, :, ", |, , ?oder *. Ein beliebiger gültiger URI oder IRI (die Nicht-ASCII-Version eines URI). No
desktop4:Subsystem Gibt an, ob es sich bei der App um eine Standard-UWP-App oder um eine UWP-Konsolen-App handelt. Eine Zeichenfolge, die einen der folgenden Werte aufweisen kann: Konsole oder Fenster. No
uap10:Subsystem Gibt an, ob es sich bei der App um eine Standard-UWP-App oder um eine UWP-Konsolen-App handelt. Eine Zeichenfolge, die einen der folgenden Werte aufweisen kann: Konsole oder Fenster. No
desktop4:SupportsMultipleInstances Gibt die Unterstützung mehrerer separater Instanzen von UWP-Apps an. Weitere Informationen finden Sie im Abschnitt "Hinweise". Ein boolescher Wert. No
uap10:SupportsMultipleInstances Gibt die Unterstützung mehrerer separater Instanzen von UWP-Apps an. Weitere Informationen finden Sie im Abschnitt "Hinweise". Ein boolescher Wert. No
uap10:TrustLevel Gibt die Vertrauensebene der App an.

"mediumIL": Die App ist voll vertrauenswürdig; Der Prozess wird mit der Integritätsebene Medium ausgeführt (siehe Obligatorische Integritätssteuerung). Erfordert die eingeschränkte Funktion "Voll vertrauenswürdige Berechtigungsstufe" (siehe App-Funktionsdeklarationen).

"appContainer": Die App wird in einem einfachen App-Container ausgeführt (siehe MSIX AppContainer-Apps); der Prozess wird mit einem Integritätsgrad von niedrig ausgeführt. Es ist auch möglich, dass eine nicht gepackte App in einem AppContainer ausgeführt wird.
Eine Zeichenfolge mit einem der folgenden Werte: "mediumIL" oder "appContainer". No
uap16:BaseNamedObjectsIsolation Aktiviert die BaseNameObject-Isolation (BNO) für die App. Eine Zeichenfolge, die einen der folgenden Werte aufweisen kann: package oder none. No
uap17:BaseNamedObjectsIsolation Aktiviert die BaseNameObject-Isolation (BNO) für die App. Eine Zeichenfolge, die einen der folgenden Werte aufweisen kann: package oder none. No
desktop11:AppLifecycleBehavior Ermöglicht einer App das Überschreiben des Lebenszyklusverhaltens, das dem Laufzeitverhalten für die Erweiterung zugeordnet ist. Apps oder Erweiterungen mit einem RuntimeBehavior von "windowsApp" weisen implizit appLifecycleBehavior den Wert "systemManaged" auf, sofern nicht anders angegeben. Apps oder Erweiterungen mit RuntimeBehavior von "packagedClassicApp" oder "win32App" verfügen implizit über AppLifecycleBehavior von "unmanaged", sofern nicht anders angegeben. Einer der folgenden Werte: "systemManaged" , "unmanaged". No

Untergeordnete Elemente

Untergeordnetes Element Beschreibung
uap:ApplicationContentUriRules Gibt an, welche Seiten im Webkontext Zugriff auf die Geolocation-Geräte des Systems (sofern die App über die Berechtigung für den Zugriff auf diese Funktion verfügt) und zugriff auf die Zwischenablage haben.
Erweiterungen (Typ: CT_ApplicationExtensions) Definiert einen oder mehrere Erweiterbarkeitspunkte für die App.
uap7:Properties Gibt die Eigenschaften der App an.
uap:VisualElements Beschreibt die visuellen Aspekte der App: Standardkachel, Logobilder, Text- und Hintergrundfarben, Anfängliche Bildschirmausrichtung, Begrüßungsbildschirm und Darstellung der Sperrbildschirmkachel.

Übergeordnete Elemente

Übergeordnetes Element BESCHREIBUNG
Anwendungen Stellt eine oder mehrere Apps dar, aus denen das Paket besteht.

Hinweise

Das Application-Element enthält Attribute, die den Erweiterbarkeitspunkten der App gemeinsam sind. Diese Informationen werden von anderen Erweiterbarkeitspunkten verwendet, um Informationen zur App abzurufen. Anwendungsattribute werden auch als Aktivierungsinformationen beim Start und bei der Verwaltung einer instance der App verwendet (mit anderen Worten, sie beschreiben, wie ein Prozess gestartet wird und mit welchem Verhalten).

Das StartPage-Attribut gilt nur für JavaScript-Apps. Wenn StartPage nicht angegeben ist, müssen sowohl die Attribute Executable als auch EntryPoint angegeben werden (und dies gilt nur für C#-, C++- oder VB-Apps).

uap10 wurde in Windows 10, Version 2004 (10.0; Build 19041)

Der uap10 Namespace (für uap10:RuntimeBehavior und uap10:TrustLevel) wurde in Windows 10, Version 2004 (10.0; Build 19041). Wenn Ihr Paket auf Systemen installiert wird, die älter sind, müssen Sie eine entsprechende Kombination von Attributen angeben (siehe folgenden Abschnitt). Andernfalls sind die Aktivierungsinformationen unvollständig, und die Installation schlägt fehl.

Wenn Ihr Paket jedoch oder höher enthält <TargetDeviceFamily MinVersion="10.0.19041.0">, wird es nur auf Systemen installiert, die den uap10 Namespace unterstützen. In diesem Fall sollten Sie die uap10:RuntimeBehavior Attribute und uap10:TrustLevel vor den älteren äquivalenten Kombinationen verwenden (siehe folgenden Abschnitt).

Kombinationen von Aktivierungsinformationsattributen

Sie können Aktivierungsinformationen-Attribute für das Application-Element angeben. und sie können optional für ein Erweiterungselement im App-Bereich angegeben werden. Wenn sie nicht für die Erweiterung angegeben sind, werden sie von der übergeordneten Anwendung geerbt. Sie geben diese Attribute in Kombinationen an, z. B. EntryPoint, RuntimeBehavior und TrustLevel haben eine überlappende Bedeutung, und sie werden in Kombinationen angegeben (und/oder geerbt). Im Folgenden finden Sie einige gültige Kombinationen von Aktivierungsinformationsattributen.

  1. Ausführbare Datei, uap10:RuntimeBehavior="packagedClassicApp", uap10:TrustLevel=["mediumIL" oder "appContainer" (standard, wenn nicht angegeben)]
  2. Ausführbare Datei, uap10:RuntimeBehavior="win32App", uap10:TrustLevel="mediumIL" (weitere Anforderungen finden Sie in der Beschreibung weiter oben in diesem Thema für uap10:RuntimeBehavior).
  3. Ausführbare Datei, EntryPoint="windows.fullTrustApplication" (entspricht uap10:RuntimeBehavior="packagedClassicApp", uap10:TrustLevel="mediumIL")
  4. Ausführbare Datei, EntryPoint="windows.partialTrustApplication" (entspricht uap10:RuntimeBehavior="packagedClassicApp", uap10:TrustLevel="appContainer")
  5. Ausführbare Datei, EntryPoint="<anything else>"

Wie Sie sehen können, können Sie stattdessen das EntryPoint-Attribut angeben, wenn Ihr Zielsystem den uap10 Namespace nicht unterstützt. Analog dazu lautet die Entsprechung von uap10:TrustLevel="appContainer" auf älteren Systemen EntryPoint="windows.partialTrustApplication".

Es ist redundant, sowohl uap10:RuntimeBehavior/uap10:TrustLevel als auch EntryPoint gleichzeitig anzugeben, aber wenn Sie dies tun, ist es ein Fehler, wenn sie widersprechen.

Universelle Windows-Plattform(UWP)-App-Aktivierungen erfordern EntryPoint. Wenn Sie also Executable und uap10:RuntimeBehavior="windowsApp" (ohne EntryPoint) angeben, ist dies ein Fehler. In diesem Fall würde EntryPoint etwas anderes als "windows.fullTrustApplication" und "windows.partialTrustApplication" angeben. und andere Werte als diese beiden sagen bereits dasselbe wie uap10:RuntimeBehavior="windowsApp". Daher wäre uap10:RuntimeBehavior in diesem Fall redundant, und Sie würden Ausführbare Datei und EntryPoint angeben.

Das Festlegen von uap10:RuntimeBehavior="win32App" und uap10:TrustLevel="appContainer" wird nicht unterstützt.

Die Einstellung uap10:TrustLevel="mediumIL" während uap10:RuntimeBehavior="windowsApp" erfordert die Microsoft.coreAppActivation_8wekyb3d8bbwe benutzerdefinierte Funktion.

Dies gilt auch, wenn uap10:TrustLevel="mediumIL" und EntryPoint ein anderer Wert als "windows.fullTrustApplication" oder "windows.partialTrustApplication"ist.

Weitere Informationen zu dieser benutzerdefinierten Funktion finden Sie hier unter Benutzerdefinierte Funktionen.

Wichtige Hinweise zu Multi-Instancing-Apps

  • Wenn eine App SupportsMultipleInstances innerhalb des Application-Elements deklariert, sind alle Vordergrunderweiterungen ebenfalls mehrere Instanzen.
  • Wenn die App SupportsMultipleInstances im Application-Element deklariert, muss sie nicht auf der Erweiterungsebene deklariert werden (z. B. in einem BackgroundTasks - oder AppService-Element ).
  • Die App sollte SupportsMultipleInstances nur für Hintergrundaufgaben, Hintergrundaudio oder App-Dienste deklarieren.
  • Konsolen-Apps sind immer mehrere Instanzen und müssen SupportsMultipleInstances explizit deklarieren.
  • Apps können die ResourceGroup-Deklaration im Manifest verwenden, um mehrere Hintergrundaufgaben auf demselben Host zu gruppieren. Dies steht im Konflikt mit der Mehrfachinstanzierung, bei der jede Aktivierung in einen separaten Host übergeht. Daher kann eine App nicht sowohl SupportsMultipleInstances als auch ResourceGroup im Manifest deklarieren.

Weitere Informationen zur Verwendung des SupportsMultipleInstances-Attributs zur Unterstützung mehrerer, separater Instanzen von UWP-Apps finden Sie unter Erstellen einer universellen Windows-App mit mehreren instance.

Anforderungen

Element Wert
Namespace http://schemas.microsoft.com/appx/manifest/uap/windows10
desktop4-Attribute http://schemas.microsoft.com/appx/manifest/desktop/windows10/4
uap10-Attribute http://schemas.microsoft.com/appx/manifest/uap/windows10/10