アプリケーション (Windows 10)

パッケージで提供される機能の一部または全部を構成するアプリを表します。

要素の階層

<パッケージ>

    <アプリケーション>

         <Application>

構文

<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>

キー

? 省略可能 (0 または 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必要があり、次の文字を含めることができない長さが 1 ~ 256 文字の文字列。 <>:"|?* いいえ
uap10:HostId 現在のアプリのホスト アプリのアプリ ID。 この属性は、 ホストされているアプリに使用されます 長さが 1 ~ 255 文字の英数字文字列。 文字で始まる必要があります。 いいえ
Id パッケージ内のアプリケーションの一意識別子。 この値は、パッケージ相対アプリ識別子 (PRAID) とも呼ばれます。 ID はパッケージ内で一意ですが、グローバルには一意ではありません。 システム上には、同じ ID が使用されている別のパッケージが存在してもかまいません。 同じ ID を同じパッケージで複数回使用することはできません。 Visual Studio テンプレートを使用する場合、この属性の既定値は App です。 開発者は、マニフェストでこれを手動で変更する必要があります。 アプリが Microsoft Store に発行された後は、アプリの識別子を変更しないでください。これにより、スタート画面でのタイルの位置が中断されます。 長さが 1 ~ 64 文字の ASCII 文字列。 この文字列には、ピリオドで区切られた英数字フィールドが含まれています。 各フィールドは、ASCII アルファベット文字で始まる必要があります。 CONPRNAUXNULCOM1COM2COM3COM4、COM5COM6、COM7COM8COM9LPT1、LPT2LPT3LPT4LPT5LPT6、LPT7LPT8LPT9 のフィールド値として使用することはできません。 Yes
uap10:Parameters アプリに渡すコマンド ライン パラメーターが含まれています。 パッケージ ID を持つ デスクトップ アプリ でのみサポートされます ( 「展開の概要」を参照してください)。 先頭と末尾に空白以外の文字を含む 1 ~ 32767 文字の長さの文字列。 いいえ
ResourceGroup リソース管理の目的で拡張機能のアクティブ化をグループ化するために使用されるタグ (CPU やメモリなど)。 Application@ResourceGroup「解説」セクションを参照してください。 長さが 1 ~ 255 文字の英数字文字列。 文字で始まる必要があります。 いいえ
uap10:RuntimeBehavior アプリの実行時の動作を指定します。

"packagedClassicApp"- WinUI 3 アプリ、またはデスクトップ ブリッジ アプリ (100 周年記念) です。 WinUI 3 アプリの場合、通常は TrustLevel が "mediumIL" になります (ただし、"appContainer" もオプションです)。

"win32App" — 外部の場所にパッケージ化されたアプリを含む、他の種類の Win32 アプリ。 通常、 TrustLevel は "mediumIL" になります (ただし、"appContainer" もオプションです)。

"windowsApp"— ユニバーサル Windows プラットフォーム (UWP) アプリ。 常に TrustLevel の "appContainer" を使用します。

すべて共通のプロパティ (で appxmanifest.xml宣言されているプロパティ) を共有し、パッケージ ID とアプリケーション ID を持つプロセスとして実行されます。 2 つのグループに含まれていると考えることができます。 1 つのグループは UWP アプリ ("windowsApp") です。もう 1 つは、メインまたは WinMain ("packagedClassicApp" または "win32App") を含む Windows .exeです。 その 2 番目のグループは 、デスクトップ アプリとも呼ばれます。
"packagedClassicApp"、"win32App"、または "windowsApp" のいずれかの値を持つ文字列。 いいえ
StartPage 拡張ポイントを処理する Web ページです。 長さが 1 ~ 256 文字の文字列。、">:|?または *の各文字<を含めることはできません。 有効な URI または IRI (ASCII 以外のバージョンの URI)。 いいえ
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) 分離を有効にします。 package または none のいずれかの値を指定できる文字列。 いいえ
uap17:BaseNamedObjectsIsolation アプリの BaseNameObject (BNO) 分離を有効にします。 package または none のいずれかの値を指定できる文字列。 いいえ
desktop11:AppLifecycleBehavior 拡張機能のランタイム動作に関連付けられているライフサイクル動作をアプリでオーバーライドできるようにします。 RuntimeBehavior が "windowsApp" のアプリまたは拡張機能は、特に指定がない限り、AppLifecycleBehavior が "systemManaged" になります。 RuntimeBehavior が "packagedClassicApp" または "win32App" のアプリまたは拡張機能には、特に指定がない限り、AppLifecycleBehavior が暗黙的に "アンマネージド" になります。 次のいずれかの値: "systemManaged" 、 "unmanaged"。 いいえ

子要素

子要素 説明
uap:ApplicationContentUriRules システムの位置情報デバイスにアクセスできる Web コンテキスト内のページ (アプリにこの機能にアクセスするアクセス許可がある場合) とクリップボードへのアクセス権を持つページを指定します。
拡張機能 (種類: CT_ApplicationExtensions) アプリの 1 つ以上の拡張ポイントを定義します。
uap7:Properties アプリのプロパティを指定します。
uap:VisualElements 既定のタイル、ロゴ画像、テキストと背景色、初期画面の向き、スプラッシュスクリーン、ロック画面タイルの外観など、アプリの視覚的な側面について説明します。

親要素

親要素 説明
アプリケーション パッケージを構成する 1 つ以上のアプリを表します。

注釈

Application 要素には、アプリに関連する機能拡張ポイントに共通する属性が含まれています。 この情報は、アプリに関する情報を取得するために、他の機能拡張ポイントによって使用されます。 アプリケーション 属性は、アプリのインスタンスの起動と管理の アクティブ化情報 としても使用されます (つまり、プロセスを開始する方法と、どのような動作を記述します)。

StartPage 属性は、JavaScript アプリにのみ適用されます。 StartPage を指定しない場合は、Executable 属性と EntryPoint 属性の両方を指定する必要があります (C#、C++、または VB アプリにのみ適用されます)。

uap10 は、Windows 10 バージョン 2004 (10.0;ビルド 19041)

名前空間 (for uap10:RuntimeBehavior および uap10:TrustLevel) はuap10、Windows 10 バージョン 2004 (10.0;ビルド 19041)。 パッケージがそれより古いシステムにインストールされている場合は、同等の属性の組み合わせを指定する必要があります (次のセクションを参照)。 それ以外の場合、アクティブ化情報は不完全になり、インストールは失敗します。

ただし、パッケージに 以上がある場合は <TargetDeviceFamily MinVersion="10.0.19041.0">、 名前空間をサポート uap10 するシステムにのみインストールされます。 その場合は、 属性と uap10:TrustLevel 属性をuap10:RuntimeBehavior、以前の同等の組み合わせに優先して使用する必要があります (次のセクションを参照してください)。

アクティブ化情報属性の組み合わせ

Application 要素でアクティブ化情報属性を指定できます。また、必要に応じて、アプリ スコープの Extension 要素で指定することもできます。 拡張機能で指定されていない場合は、親アプリケーションから継承されます。 これらの属性は組み合わせて指定します。たとえば、 EntryPointRuntimeBehaviorTrustLevel は重複する意味を持ち、組み合わせで指定 (または継承) されます。 アクティブ化情報属性の有効な組み合わせをいくつか次に示します。

  1. Executableuap10:RuntimeBehavior="packagedClassicApp"、 uap10:TrustLevel=["mediumIL"、または "appContainer" (省略した場合の既定値)
  2. 実行可能ファイル、uap10:RuntimeBehavior="win32App"、uap10:TrustLevel="mediumIL" (その他の要件については、このトピックで前述した uap10:RuntimeBehavior の説明を参照してください)。
  3. Executable, EntryPoint="windows.fullTrustApplication" ( uap10:RuntimeBehavior="packagedClassicApp", uap10:TrustLevel="mediumIL")
  4. Executable, EntryPoint="windows.partialTrustApplication" ( uap10:RuntimeBehavior="packagedClassicApp", uap10:TrustLevel="appContainer")
  5. 実行可能ファイルEntryPoint="<any else>"

ご覧のように、ターゲット システムで名前空間がサポート uap10 されていない場合は、代わりに EntryPoint 属性を指定できます。 同様に、古いシステムの uap10:TrustLevel="appContainer"' に相当するものは EntryPoint="windows.partialTrustApplication" です。

uap10:RuntimeBehavior/uap10:TrustLevelEntryPoint の両方を同時に指定することは冗長ですが、指定した場合はエラーになります。

ユニバーサル 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" の設定はサポートされていません。

while をuap10:RuntimeBehavior="windowsApp"設定uap10:TrustLevel="mediumIL"するには、カスタム機能がMicrosoft.coreAppActivation_8wekyb3d8bbwe必要です。

これは、 と EntryPoint が または "windows.partialTrustApplication"以外"windows.fullTrustApplication"の値である場合uap10:TrustLevel="mediumIL"にも当てはまります。

このカスタム機能の詳細については、「カスタム 機能」を参照してください。

複数インスタンス化アプリに関する重要な注意事項

  • アプリで Application 要素内で SupportsMultipleInstances が宣言されている場合、すべてのフォアグラウンド拡張機能もマルチインスタンス化されます。
  • アプリで Application 要素内で SupportsMultipleInstances が宣言されている場合は、Extensions レベル (BackgroundTasks 要素や AppService 要素など) で宣言する必要はありません。
  • アプリでは、バックグラウンド タスク、バックグラウンド オーディオ、またはアプリ サービスでのみ SupportsMultipleInstances を宣言する必要があります。
  • コンソール アプリは常に複数インスタンス化され、 SupportsMultipleInstances を明示的に宣言する必要があります。
  • アプリでは、マニフェストで ResourceGroup 宣言を使用して、複数のバックグラウンド タスクを同じホストにグループ化できます。 これはマルチインスタンスと競合し、それぞれのアクティブ化は別々のホストに入ります。 そのため、アプリでは、マニフェストで SupportsMultipleInstancesResourceGroup の両方を宣言することはできません。

SupportsMultipleInstances 属性を使用して UWP アプリの複数の個別のインスタンスをサポートする方法の詳細については、「複数インスタンスユニバーサル Windows アプリを作成する」を参照してください。

要件

Item
Namespace 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