Compartilhar via


Função MddTryCreatePackageDependency (msixdynamicdependency.h)

Cria uma referência de tempo de instalação para uma dependência de pacote de estrutura para o aplicativo atual, usando o nome da família de pacotes especificado, a versão mínima e critérios adicionais.

Sintaxe

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

Parâmetros

user

Tipo: PSID

O escopo do usuário da dependência do pacote. Se FOR NULL, o contexto de usuário do chamador será usado. Deve ser NULL se ScopeIsSystem for especificado para o parâmetro options .

packageFamilyName

Tipo: PCWSTR

O nome da família de pacotes do pacote de estrutura no qual assumir a dependência.

minVersion

Tipo: PACKAGE_VERSION

A versão mínima do pacote de estrutura na qual assumir a dependência.

packageDependencyProcessorArchitectures

Tipo: PackageDependencyProcessorArchitectures

As arquiteturas de processador da dependência do pacote.

lifetimeKind

Tipo: PackageDependencyLifetimeKind

O tipo de artefato a ser usado para definir o tempo de vida da dependência do pacote. Para obter mais informações, consulte os comentários.

lifetimeArtifact

Tipo: PCWSTR

O nome do artefato usado para definir o tempo de vida da dependência do pacote. Deve ser NULL se o parâmetro lifetimeKind for Process. Para obter mais informações, consulte os comentários.

options

Tipo: CreatePackageDependencyOptions

As opções a serem aplicadas ao criar a dependência do pacote.

packageDependencyId

Tipo: PWSTR*

A ID da nova dependência de pacote. Use a função HeapAlloc para alocar memória para esse parâmetro e use HeapFree para desalocar a memória.

Retornar valor

Tipo: HRESULT

Se a função for bem-sucedida, ela retornará ERROR_SUCCESS. Caso contrário, a função retornará um código de erro. Os códigos de erro possíveis incluem o seguinte.

Código de retorno Descrição
E_INVALIDARG O parâmetro packageDependencyId é NULL na entrada.

Comentários

No instalador do aplicativo ou durante a primeira execução do aplicativo, chame esse método para especificar um conjunto de critérios para um pacote de estrutura que você deseja usar em seu aplicativo. Isso informa ao sistema operacional que o aplicativo tem uma dependência de um pacote de estrutura que atende aos critérios especificados. Se um ou mais pacotes de estrutura que atendem aos critérios estiverem instalados, o Windows garantirá que pelo menos um desses pacotes de estrutura permaneça instalado até que a referência em tempo de instalação seja excluída. Para obter mais informações, consulte Usar a API de dependência dinâmica para referenciar pacotes MSIX em tempo de execução.

Essa função falhará se os critérios de dependência especificados não puderem ser resolvidos para um pacote específico. Essa resolução de pacote marcar será ignorada se DoNotVerifyDependencyResolution for especificado para o parâmetro options. Isso é útil para instaladores em execução como contextos de usuário diferentes do usuário de destino (por exemplo, instaladores em execução como LocalSystem).

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 10, versão 1809 (com SDK do Aplicativo Windows 1.0 ou posterior)
Cabeçalho msixdynamicdependency.h