Compartilhar via


Função TryCreatePackageDependency (appmodel.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 os critérios adicionais.

Sintaxe

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

Parâmetros

user

Tipo: PSID

O escopo do usuário da dependência do pacote. Se NULL, o contexto de usuário do chamador será usado. Deve ser NULL se CreatePackageDependencyOptions_ScopeIsSystem for especificado.

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 no qual usar 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 as observações.

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 PackageDependencyLifetimeKind_Process. Para obter mais informações, consulte as observações.

options

Tipo: CreatePackageDependencyOptions

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

packageDependencyId

Tipo: PWSTR*

Quando esse método retorna, contém o endereço de um ponteiro para uma cadeia de caracteres Unicode terminada em nulo que especifica a ID da nova dependência do pacote. O chamador é responsável por liberar esse recurso depois que ele não for mais necessário chamando HeapFree.

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 fazer referência a 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. Esse marcar de resolução de pacote será ignorado se CreatePackageDependencyOptions_DoNotVerifyDependencyResolution for especificado para o parâmetro de opções. 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 11 (introduzido em 10.0.22000.0)
Cabeçalho appmodel.h

Confira também

Usar a API de dependência dinâmica para referenciar pacotes MSIX em tempo de execução