TryCreatePackageDependency 関数 (appmodel.h)

指定したパッケージ ファミリ名、最小バージョン、および追加の条件を使用して、現在のアプリのフレームワーク パッケージ依存関係のインストール時参照を作成します。

構文

HRESULT TryCreatePackageDependency(
  PSID                                    user,
  PCWSTR                                  packageFamilyName,
  PACKAGE_VERSION                         minVersion,
  PackageDependencyProcessorArchitectures packageDependencyProcessorArchitectures,
  PackageDependencyLifetimeKind           lifetimeKind,
  PCWSTR                                  lifetimeArtifact,
  CreatePackageDependencyOptions          options,
  PWSTR                                   *packageDependencyId
);

パラメーター

user

種類: PSID

パッケージ依存関係のユーザー スコープ。 NULL の場合、呼び出し元のユーザー コンテキストが使用されます。 CreatePackageDependencyOptions_ScopeIsSystemが指定されている場合は NULL にする必要があります。

packageFamilyName

種類: PCWSTR

依存関係を取得するフレームワーク パッケージのパッケージ ファミリ名。

minVersion

種類: PACKAGE_VERSION

依存関係を取得するフレームワーク パッケージの最小バージョン。

packageDependencyProcessorArchitectures

種類: PackageDependencyProcessorArchitectures

パッケージ依存関係のプロセッサ アーキテクチャ。

lifetimeKind

種類: PackageDependencyLifetimeKind

パッケージ依存関係の有効期間を定義するために使用する成果物の種類。 詳細については、解説を参照してください。

lifetimeArtifact

種類: PCWSTR

パッケージの依存関係の有効期間を定義するために使用される成果物の名前。 lifetimeKind パラメーターがPackageDependencyLifetimeKind_Process場合は NULL にする必要があります。 詳細については、解説を参照してください。

options

種類: CreatePackageDependencyOptions

パッケージの依存関係を作成するときに適用するオプション。

packageDependencyId

種類: PWSTR*

このメソッドが戻るときに、 には、新しいパッケージ依存関係の ID を指定する null で終わる Unicode 文字列へのポインターのアドレスが含まれます。 呼び出し元は、 HeapFree を呼び出すことによって不要になったリソースを解放する責任があります。

戻り値

型: HRESULT

関数が成功した場合は 、ERROR_SUCCESSを返します。 それ以外の場合、関数はエラー コードを返します。 考えられるエラー コードは次のとおりです。

リターン コード 説明
E_INVALIDARG packageDependencyId パラメーターは、入力時に NULL です。

注釈

アプリのインストーラーまたはアプリの初回実行時に、このメソッドを呼び出して、アプリで使用するフレームワーク パッケージの一連の条件を指定します。 これにより、指定された条件を満たすフレームワーク パッケージにアプリが依存していることが OS に通知されます。 条件を満たす 1 つ以上のフレームワーク パッケージがインストールされている場合、Windows では、インストール時参照が削除されるまで、これらのフレームワーク パッケージの少なくとも 1 つはインストールされたままになることが保証されます。 詳細については、「 動的依存関係 API を使用して実行時に MSIX パッケージを参照する」を参照してください。

指定した依存関係条件を特定のパッケージに解決できない場合、この関数は失敗します。 options パラメーターにCreatePackageDependencyOptions_DoNotVerifyDependencyResolutionが指定されている場合、このパッケージ解決チェックはスキップされます。 これは、ターゲット ユーザー以外のユーザー コンテキストとして実行されているインストーラー (LocalSystem として実行されているインストーラーなど) に役立ちます。

要件

要件
サポートされている最小のクライアント Windows 11 (10.0.22000.0 で導入)
Header appmodel.h

こちらもご覧ください

動的依存関係 API を使用して、実行時に MSIX パッケージを参照する