次の方法で共有


MddTryCreatePackageDependency 関数 (msixdynamicdependency.h)

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

構文

HRESULT MddTryCreatePackageDependency(
  PSID                                       user,
  PCWSTR                                     packageFamilyName,
  PACKAGE_VERSION                            minVersion,
  MddPackageDependencyProcessorArchitectures packageDependencyProcessorArchitectures,
  MddPackageDependencyLifetimeKind           lifetimeKind,
  PCWSTR                                     lifetimeArtifact,
  MddCreatePackageDependencyOptions          options,
  PWSTR                                      *packageDependencyId
) noexcept;

パラメーター

user

型: PSID

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

packageFamilyName

型: PCWSTR

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

minVersion

型: PACKAGE_VERSION

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

packageDependencyProcessorArchitectures

型: PackageDependencyProcessorArchitectures

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

lifetimeKind

型: PackageDependencyLifetimeKind

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

lifetimeArtifact

型: PCWSTR

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

options

型: CreatePackageDependencyOptions

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

packageDependencyId

型: PWSTR*

新しいパッケージ依存関係の ID。 HeapAlloc 関数を使用してこのパラメーターにメモリを割り当て、HeapFree 使用してメモリの割り当てを解除します。

戻り値

型: HRESULT

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

リターン コード 説明
無効な引数エラー (E_INVALIDARG) packageDependencyId パラメーターは、入力時に NULL です。

注釈

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

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

必要条件

要件 価値
サポートされる最小クライアント Windows 10 バージョン 1809 (Windows App SDK 1.0 以降を使用)
ヘッダー msixdynamicdependency.h