次の方法で共有


AddPackageDependencyOptions2 列挙 (appmodel.h)

AddPackageDependency2 関数を使用してフレームワーク パッケージにランタイム参照を追加するときに適用できるオプション (バージョン 2) を定義します。

構文

typedef enum AddPackageDependencyOptions2 {
  AddPackageDependencyOptions2_None,
  AddPackageDependencyOptions2_PrependIfRankCollision,
  AddPackageDependencyOptions2_SpecifiedPackageFamilyOnly
} ;

定数

 
AddPackageDependencyOptions2_None
オプションは適用されません。
AddPackageDependencyOptions2_PrependIfRankCollision
addPackageDependency2 の呼び出しと同じランクのパッケージ グラフに複数のパッケージ存在する場合、解決されたパッケージは同じランクの他のパッケージの前に追加されます。 詳細については、「AddPackageDependency2 を参照してください。
AddPackageDependencyOptions2_SpecifiedPackageFamilyOnly
ターゲット パッケージのファミリのみをパッケージ グラフに追加します。 これにより、実行時に依存関係をより外科的に管理する方法が提供されます。

フレームワーク パッケージは、Framework のマニフェストで依存関係を宣言できません (つまり、Framework パッケージの依存関係リストのサイズは常に 1 です。[TheFrameworkPackage]Framework パッケージを対象とする AddPackageDependency2 は、呼び出し元のパッケージ グラフにターゲットのみを追加します。フレームワーク パッケージで依存関係が宣言されています。 したがって、フレームワーク パッケージをターゲットに設定すると、ターゲットのパッケージ ファミリに動的依存関係を制限する必要がなくなりますが、メイン パッケージのみが実行できる処理 (たとえば、Packaged COM OOP サーバー、windows.startupTask など) があるため、動的に使用するためにメイン パッケージを置き換えることはできません。 メイン パッケージでは、この追加の間接パッケージの問題が発生するため、AddPackageDependencyOptions2_SpecifiedPackageFamilyOnly オプションの必要性が生じ、AddPackageDependency2 の範囲が直接対象パッケージ ファミリのみに絞り込まれます。

必要条件

要件 価値
サポートされる最小クライアント Windows 11 バージョン 23H2 (10.0;ビルド 22631)
ヘッダー appmodel.h

関連項目

  • AddPackageDependency2