Función TryCreatePackageDependency (appmodel.h)
Crea una referencia en tiempo de instalación para una dependencia de paquete de marco para la aplicación actual, usando el nombre de familia de paquetes, la versión mínima y los criterios adicionales especificados.
Sintaxis
HRESULT TryCreatePackageDependency(
PSID user,
PCWSTR packageFamilyName,
PACKAGE_VERSION minVersion,
PackageDependencyProcessorArchitectures packageDependencyProcessorArchitectures,
PackageDependencyLifetimeKind lifetimeKind,
PCWSTR lifetimeArtifact,
CreatePackageDependencyOptions options,
PWSTR *packageDependencyId
);
Parámetros
user
Tipo: PSID
Ámbito de usuario de la dependencia del paquete. Si es NULL, se usa el contexto de usuario del autor de la llamada. Debe ser NULL si se especifica CreatePackageDependencyOptions_ScopeIsSystem .
packageFamilyName
Tipo: PCWSTR
Nombre de familia del paquete del paquete de marco en el que se va a tomar la dependencia.
minVersion
Tipo: PACKAGE_VERSION
Versión mínima del paquete de marco en la que se va a tomar la dependencia.
packageDependencyProcessorArchitectures
Tipo: PackageDependencyProcessorArchitectures
Arquitecturas de procesador de la dependencia del paquete.
lifetimeKind
Tipo: PackageDependencyLifetimeKind
Tipo de artefacto que se va a usar para definir la duración de la dependencia del paquete. Para obtener más información, vea los comentarios.
lifetimeArtifact
Tipo: PCWSTR
Nombre del artefacto usado para definir la duración de la dependencia del paquete. Debe ser NULL si el parámetro lifetimeKind es PackageDependencyLifetimeKind_Process. Para obtener más información, vea los comentarios.
options
Tipo: CreatePackageDependencyOptions
Las opciones que se aplicarán al crear la dependencia del paquete.
packageDependencyId
Tipo: PWSTR*
Cuando este método devuelve , contiene la dirección de un puntero a una cadena Unicode terminada en null que especifica el identificador de la nueva dependencia de paquete. El autor de la llamada es responsable de liberar este recurso una vez que ya no sea necesario llamando a HeapFree.
Valor devuelto
Tipo: HRESULT
Si la función se realiza correctamente, devuelve ERROR_SUCCESS. De lo contrario, la función devuelve un código de error. Los posibles códigos de error incluyen lo siguiente.
Código devuelto | Descripción |
---|---|
E_INVALIDARG | El parámetro packageDependencyId es NULL en la entrada. |
Comentarios
En el instalador de la aplicación o durante la primera ejecución de la aplicación, llama a este método para especificar un conjunto de criterios para un paquete de marco que quieres usar en la aplicación. Esto informa al sistema operativo de que la aplicación tiene una dependencia en un paquete de marcos que cumple los criterios especificados. Si se instalan uno o varios paquetes de marcos que cumplen los criterios, Windows se asegurará de que al menos uno de estos paquetes de marcos permanezca instalado hasta que se elimine la referencia en tiempo de instalación. Para más información, consulte Uso de la API de dependencia dinámica para hacer referencia a paquetes MSIX en tiempo de ejecución.
Esta función produce un error si los criterios de dependencia especificados no se pueden resolver en un paquete específico. Esta comprobación de resolución de paquetes se omite si se especifica CreatePackageDependencyOptions_DoNotVerifyDependencyResolution para el parámetro options . Esto resulta útil para los instaladores que se ejecutan como contextos de usuario distintos del usuario de destino (por ejemplo, instaladores que se ejecutan como LocalSystem).
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 11 (introducido en la versión 10.0.22000.0) |
Encabezado | appmodel.h |
Consulte también
Uso de la API de dependencias dinámicas para hacer referencia a paquetes MSIX en tiempo de ejecución