共用方式為


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*

當這個方法傳回時,會包含指定新套件相依性標識符之 Null 終止 Unicode 字串之指標的位址。 呼叫端負責在呼叫 HeapFree 不再需要此資源之後釋出此資源。

傳回值

類型: HRESULT

如果函式成功,它會傳回 ERROR_SUCCESS。 否則,函式會傳回錯誤碼。 可能的錯誤碼包括下列專案。

傳回碼 描述
E_INVALIDARG packageDependencyId 參數在輸入時為 NULL。

備註

在應用程式的安裝程式中,或在應用程式第一次執行期間呼叫此方法,以指定您想要在應用程式中使用的架構套件的一組準則。 這會通知 OS 您的應用程式相依於符合指定準則的架構套件。 如果已安裝符合準則的一或多個架構套件,Windows 會確保至少會安裝其中一個架構套件,直到刪除安裝時間參考為止。 如需詳細資訊,請參閱 在運行時間使用動態相依性 API 參考 MSIX 套件

如果指定的相依性準則無法解析為特定套件,則此函式會失敗。 如果為 options 參數指定了CreatePackageDependencyOptions_DoNotVerifyDependencyResolution,則會略過此套件解析檢查。 這適用於以目標使用者 (以外的用戶內容執行的安裝程式,例如,以 LocalSystem) 身分執行的安裝程式。

規格需求

需求
最低支援的用戶端 Windows 11 (於 10.0.22000.0) 中引進
標頭 appmodel.h

另請參閱

使用動態相依性 API 在運行時間參考 MSIX 套件