パッケージで提供される機能の一部またはすべてを構成するアプリを表します。
要素階層
<アプリケーション>
構文
<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?
uap11:CurrentDirectoryPath?
uap11:Parameters?
<!-- Child elements -->
uap:ApplicationContentUriRules?
Extensions?
uap7:Properties
uap:VisualElements
</Application>
鍵
? 省略可能 (ゼロまたは 1)
& インターリーブ コネクタ (任意の順序で発生する可能性があります)
属性と要素
属性
| 属性 | 形容 | データ型 | 必須 | 既定値 |
|---|---|---|---|---|
| EntryPoint | アクティブ化可能なクラス ID ("Office.Winword.Class"など)、または "windows.fullTrustApplication"、または "windows.partialTrustApplication" です。 EntryPoint 指定する場合は、Executable 属性も指定する必要があります。 EntryPoint 指定する場合は、StartPage 属性を指定しないでください。 | 拡張機能を処理するタスクを表す、長さが 1 ~ 256 文字の文字列。 これは通常、Windows ランタイム型の名前空間修飾名です。ただし、特殊な値 "windows.fullTrustApplication" または "windows.partialTrustApplication" のいずれかになります。 EntryPoint が指定されていない場合は、アプリに対して定義されている EntryPoint が代わりに使用されます。 | いいえ | |
| 実行可能 | アプリの既定の起動実行可能ファイル。 指定したファイルがパッケージに存在する必要があります。 以前のシステムでは (詳細については「解説」セクションを参照)、実行可能 指定する場合は、EntryPoint 属性も指定する必要があります。 実行可能 指定する場合は、StartPage 属性を指定 必要があります。 |
.exe で終わる必要があり、<、>、:、"、|、?、または *の文字を含めることはできません。 |
いいえ | |
| uap10:HostId の |
現在のアプリのホスト アプリのアプリ ID。 この属性は、ホストされているアプリ に使用されます。 | 長さが 1 ~ 255 文字の英数字文字列。 文字で始まる必要があります。 | いいえ | |
| Id | パッケージ内のアプリケーションの一意識別子。 この値は、パッケージ相対アプリ識別子 (PRAID) と呼ばれることもあります。 ID はパッケージ内で一意ですが、グローバルには一意ではありません。 同じ ID を使用する別のパッケージがシステムに存在する可能性があります。 同じパッケージ内で同じ ID を複数回使用することはできません。 Visual Studio テンプレートを使用する場合、この属性の既定値は Appです。 開発者は、マニフェストでこれを手動で変更する必要があります。 アプリが Microsoft Store に発行された後は、アプリの識別子を変更しないでください。これにより、スタート画面でのタイルの位置が中断されます。 | 長さが 1 ~ 64 文字の ASCII 文字列。 この文字列には、ピリオドで区切られた英数字フィールドが含まれています。 各フィールドは、ASCII 英字で始まる必要があります。 これらはフィールド値として使用できません。CON、PRN、AUX、NUL、COM1、COM2、COM3、COM4、COM5, COM6, COM7, COM8, COM9, LPT1, LPT2, LPT3, LPT4, LPT5、LPT6、LPT7、LPT8、および LPT9 をします。 | はい | |
| uap10:Parameters | アプリに渡すコマンド ライン パラメーターが含まれています。 パッケージ ID を持つデスクトップ アプリ でのみサポートされます (展開の概要 参照)。 | 1 ~ 32767 文字の長さの文字列で、先頭と末尾に空白文字以外の文字が含まれます。 | いいえ | |
| ResourceGroup | リソース管理の目的で拡張機能のアクティブ化をグループ化するために使用されるタグ (CPU やメモリなど)。 Application@ResourceGroupの「解説」セクションを参照してください。 | 長さが 1 ~ 255 文字の英数字文字列。 文字で始まる必要があります。 | いいえ | |
| uap10:RuntimeBehavior を |
アプリの実行時の動作を指定します。 "packagedClassicApp"— デスクトップ ブリッジ アプリ (Centennial)。 "win32App": UWP ではなく、デスクトップ ブリッジ (Centennial) 動作で実行されていないパッケージ アプリ。 これらのアプリは、 Winmain、 main、または HWND ベースと呼ばれることもあります。 "mediumIL" の TrustLevel が必要です。 "windowsApp" - ユニバーサル Windows プラットフォーム (UWP) アプリ。 常に 、"appContainer" の TrustLevel を使用します。 これら 3 つの動作のいずれかを持つすべてのアプリは、共通プロパティを共有し (これらの共通プロパティの一部は appxmanifest.xmlで宣言されています)、パッケージ ID とアプリケーション ID を持つプロセスとして実行されます。 また、これらのアプリは 2 つのグループ内にあると考えることができます ( uap10:RuntimeBehavior には 3 つの可能な値がある場合でも)。 アプリの最初のグループは UWP アプリ ("windowsApp") です。アプリの 2 番目のグループは、メインと WinMain ("packagedClassicApp" または "win32App" のいずれか) を持つ Windows .exeです。 2 番目のグループは 、デスクトップ アプリとも呼ばれます。 |
"packagedClassicApp"、"win32App"、または "windowsApp" のいずれかの値を持つ文字列。 | いいえ | |
| StartPage の |
機能拡張ポイントを処理する Web ページ。 |
<、>、:、"、|、?、または *の文字を含むことができない長さが 1 ~ 256 文字の文字列。 任意の有効な URI または IRI (URI の ASCII 以外のバージョン)。 |
いいえ | |
| desktop4:Subsystem | アプリが標準の UWP アプリか UWP コンソール アプリかを示します。 | コンソール または ウィンドウ 任意の値を指定できる文字列。 | いいえ | |
| uap10:Subsystem | アプリが標準の UWP アプリか UWP コンソール アプリかを示します。 | コンソール または ウィンドウ 任意の値を指定できる文字列。 | いいえ | |
| desktop4:SupportsMultipleInstances | UWP アプリの複数の個別のインスタンスのサポートを示します。 詳細については、「解説」セクションを参照してください。 | ブール値。 | いいえ | |
| uap10:SupportsMultipleInstances | UWP アプリの複数の個別のインスタンスのサポートを示します。 詳細については、「解説」セクションを参照してください。 | ブール値。 | いいえ | |
| uap10:TrustLevel | アプリの信頼レベルを指定します "mediumIL"— アプリは完全信頼 。そのプロセスは、中 の整合性レベルで実行されます (の整合性制御を参照)。 "完全信頼アクセス許可レベル" の制限付き機能が必要です (アプリ機能の宣言 参照)。 "appContainer" - アプリは軽量のアプリ コンテナーで実行されます (MSIX AppContainer アプリ 参照)。そのプロセスは、低の整合性レベルで実行されます。 また、パッケージ化されていないアプリを AppContainer で実行することもできます。 |
"mediumIL" または "appContainer" のいずれかの値を持つ文字列。 | いいえ | |
| uap16:BaseNamedObjectsIsolation | アプリの BaseNameObject (BNO) 分離を有効にします。 | 次のいずれかの値を指定できる文字列。 パッケージ または なし。 | いいえ | |
| uap17:BaseNamedObjectsIsolation | アプリの BaseNameObject (BNO) 分離を有効にします。 | 次のいずれかの値を指定できる文字列。 パッケージ または なし。 | いいえ | |
| desktop11:AppLifecycleBehavior | 拡張機能のランタイム動作に関連付けられているライフサイクル動作をアプリがオーバーライドできるようにします。 RuntimeBehavior が "windowsApp" のアプリまたは拡張機能は、特に指定がない限り、AppLifecycleBehavior が "systemManaged" 暗黙的に含まれます。 RuntimeBehavior が "packagedClassicApp" または "win32App" の を持つアプリまたは拡張機能は、特に指定しない限り、AppLifecycleBehavior "unmanaged" を暗黙的に します。 | "systemManaged" 、 "unmanaged" のいずれかの値です。 | いいえ | |
| uap11:CurrentDirectoryPath | アプリケーション プロセスの起動時の初期ディレクトリを指定します。 この属性はマクロをサポートします。 詳細については、パッケージ マニフェスト スキーマのマクロの |
<、>、|、?、または *の文字を含めることができない省略可能な文字列。 > |
いいえ | |
| uap11:Parameters | 拡張機能の対象となるサブシステム。 この属性はマクロをサポートします。 詳細については、パッケージ マニフェスト スキーマのマクロの |
1 ~ 32767 文字の長さの値を持つ省略可能な文字列で、先頭と末尾に空白文字以外の文字が含まれます。 | いいえ |
子要素
| 子要素 | 形容 |
|---|---|
| uap:ApplicationContentUriRules | システムの位置情報デバイスにアクセスできる Web コンテキスト内のページ (アプリがこの機能にアクセスするアクセス許可を持っている場合) とクリップボードへのアクセス権を持つページを指定します。 |
| 拡張機能 (型: CT_ApplicationExtensions) | アプリの 1 つ以上の拡張ポイントを定義します。 |
| uap7:Properties | アプリのプロパティを指定します。 |
| uap:VisualElements の |
アプリの視覚的な側面 (既定のタイル、ロゴ画像、テキストと背景色、初期画面の向き、スプラッシュ画面、ロック画面のタイルの外観) について説明します。 |
親要素
| Parent 要素 | 形容 |
|---|---|
| アプリケーション | パッケージを構成する 1 つ以上のアプリを表します。 |
備考
Application 要素には、アプリに関連する機能拡張ポイントに共通する属性が含まれています。 この情報は、アプリに関する情報を取得するために、他の機能拡張ポイントによって使用されます。 アプリケーション 属性は、アプリのインスタンスの起動と管理に されるアクティブ化情報 としても使用されます (つまり、プロセスを開始する方法と、どのような動作を記述します)。
StartPage 属性は、JavaScript アプリにのみ適用されます。 StartPage 指定されていない場合は、Executable 属性と EntryPoint 属性の両方を指定する必要があります (C#、C++、または VB アプリにのみ適用されます)。
uap10 は Windows 10 バージョン 2004 (10.0;ビルド 19041)
uap10 名前空間 (uap10:RuntimeBehavior および uap10:TrustLevel用) は、Windows 10 バージョン 2004 (10.0;ビルド 19041)。 パッケージがそれより古いシステムにインストールされている場合は、同等の属性の組み合わせを指定する必要があります (次のセクションを参照)。そうしないと、アクティブ化情報が不完全になり、インストールは失敗します。
ただし、パッケージに <TargetDeviceFamily MinVersion="10.0.19041.0">以上の場合は、uap10 名前空間をサポートするシステムにのみインストールされます。 その場合は、古い同等の組み合わせよりも優先して、uap10:RuntimeBehavior 属性と uap10:TrustLevel 属性を使用する必要があります (次のセクションを参照)。
アクティブ化情報属性の組み合わせ
アクティブ化情報属性は、Application 要素で指定できます。また、必要に応じて、アプリ スコープの Extension 要素で指定することもできます。 拡張機能で指定されていない場合は、アプリケーション 親から継承されます。 これらの属性は組み合わせて指定します。たとえば、EntryPoint、RuntimeBehavior、および TrustLevel は重複する意味を持ち、組み合わせて指定 (継承) されます。 アクティブ化情報属性の有効な組み合わせをいくつか次に示します。
- Executable、uap10:RuntimeBehavior="packagedClassicApp"、uap10:TrustLevel=["mediumIL"、または "appContainer" (省略した場合の既定値)]
- Executable、uap10:RuntimeBehavior="win32App"、uap10:TrustLevel="mediumIL" (その他の要件については、uap10:RuntimeBehaviorに関するこのトピックの説明を参照してください)。
- Executable, EntryPoint="windows.fullTrustApplication" (uap10:RuntimeBehavior="packagedClassicApp", uap10:TrustLevel="mediumIL")
- Executable, EntryPoint="windows.partialTrustApplication" (uap10:RuntimeBehavior="packagedClassicApp", uap10:TrustLevel="appContainer")
- 実行可能な、EntryPoint="<他の>
ご覧のように、ターゲット システムが uap10 名前空間をサポートしていない場合は、代わりに EntryPoint 属性を指定できます。 同様に、以前のシステム uap10:TrustLevel="appContainer"' に相当するものは、EntryPoint ="windows.partialTrustApplication"です。
ただし、uap10:RuntimeBehavior / と EntryPoint の両方同時に指定することは冗長です。 しかし、それを行う場合は、矛盾している場合はエラーです。
ユニバーサル Windows プラットフォーム (UWP) アプリのアクティブ化には、EntryPoint 必要があります。 したがって、実行可能 指定し、uap10:RuntimeBehavior ="windowsApp" (EntryPointを使用しない) をすると、エラーになります。 この場合も、EntryPoint では、"windows.fullTrustApplication" と "windows.partialTrustApplication" 以外のものを指定します。これら 2 つ以外の値は、既に uap10:RuntimeBehavior ="windowsApp"と同じことを言っています。 したがって、この場合は uap10:RuntimeBehavior 冗長になり、実行可能ファイル と EntryPoint 指定します。
uap10:RuntimeBehavior ="win32App" と uap10:TrustLevel="appContainer"設定はサポートされていません。
uap10:TrustLevel="mediumIL" 中に uap10:RuntimeBehavior="windowsApp" を設定するには、Microsoft.coreAppActivation_8wekyb3d8bbwe カスタム機能が必要です。
これは、uap10:TrustLevel="mediumIL" と EntryPoint が "windows.fullTrustApplication" または "windows.partialTrustApplication"以外の値である場合にも当てはまります。
このカスタム機能の詳細については、カスタム機能を参照してください。
複数インスタンス化アプリに関する重要な注意事項
- アプリが Application 要素内 SupportsMultipleInstances を宣言している場合、すべてのフォアグラウンド拡張機能もマルチインスタンス化されます。
- アプリが Application 要素内 SupportsMultipleInstances を宣言する場合は、Extensions レベルで宣言する必要はありません (たとえば、BackgroundTasks や AppService 要素)。
- アプリでは、バックグラウンド タスク、バックグラウンド オーディオ、またはアプリ サービス SupportsMultipleInstances のみを宣言する必要があります。
- コンソール アプリは常にマルチインスタンスであり、SupportsMultipleInstances 明示的に宣言する必要があります。
- アプリでは、マニフェストで ResourceGroup 宣言を使用して、複数のバックグラウンド タスクを同じホストにグループ化できます。 これはマルチインスタンス化と競合し、各アクティブ化は個別のホストに入ります。 そのため、アプリは、SupportsMultipleInstances と ResourceGroup の両方をマニフェストで宣言することはできません。
SupportsMultipleInstances 属性を使用して UWP アプリの複数の個別のインスタンスをサポートする方法の詳細については、「複数インスタンスのユニバーサル Windows アプリを作成する」を参照してください。
必要条件
| アイテム | 価値 |
|---|---|
| 名前空間 | http://schemas.microsoft.com/appx/manifest/uap/windows10 |
| desktop4 属性の | http://schemas.microsoft.com/appx/manifest/desktop/windows10/4 |
| uap10 属性を する | http://schemas.microsoft.com/appx/manifest/uap/windows10/10 |