Microsoft.Windows.Management.Deployment Espacio de nombres

Este espacio de nombres proporciona API de administración de paquetes MSIX comparables a las de la Windows. Management.Deployment espacio de nombres, pero con funcionalidad adicional, experiencia de desarrollador mejorada y optimizaciones de rendimiento.

Estas API de Windows Runtime (WinRT) permiten implementar y administrar software como paquetes MSIX. Puede instalar, actualizar, desinstalar, enumerar y administrar paquetes de otro modo. Estos son los escenarios en los que se centran las API:

  • Almacenar provisionalmente un paquete
  • Registro de un paquete
  • Agregar o actualizar un paquete
  • Quitar un paquete
  • Reparación de un paquete
  • Restablecer un paquete
  • Aprovisionamiento de un paquete
  • Desaprovisionamiento de un paquete

La funcionalidad adicional incluye:

  • IsReadyXxx. Determine si un paquete está listo para su uso.
  • Asegúrese de queReady. Determine si un paquete está listo para su uso y, si no es así, consícelo.
  • IsPackageRegistrationPending. Determine si hay una actualización en espera de registrarse.
  • Conjuntos de paquetes. Operaciones por lotes.
  • PackageRuntimeManager. Operaciones por lotes para su uso en tiempo de ejecución a través de dependencias dinámicas.
  • Facilidad de uso. Mejoras de calidad de vida.

Estructura de API

Los métodos para impulsar la actividad de implementación suelen seguir el patrón:

<verb>Package[Set][By<Type>][Suffix]Async(target, options)

Se admiten los verbos siguientes:

  • Es... Ready[OrNewerAvailable]
  • Asegúrese de... Listo
  • Añadir
  • Stage
  • Register
  • Eliminar
  • Reparación
  • Reset
  • Aprovisionamiento
  • Desaprovisionamiento

Esos métodos aceptan sus paquetes de destino como primer parámetro. Ese parámetro puede ser varios tipos de información, entre los que se incluyen:

  • Filename
  • Camino
  • PackageFamilyName
  • PackageFullName
  • Uri

! [NOTA] Los métodos con un destino de un URI se denominan ... ByUri....

! [NOTA] Los métodos con un destino de PackageFamilyName se denominan ... ByPackageFamilyName....

! [NOTA] Los métodos con un destino de PackageFullName se denominan ... ByPackageFullName....

! [NOTA] Métodos sin ... Por<tipo>... calificador acepta una cadena que puede contener uno o varios tipos de identificadores. Pueden variar para distintos verbos. Consulte la documentación de la API para ver los tipos de destino específicos admitidos por cada método.

Estos métodos aceptan opciones como un tipo coincidente <verb>Package[Set]Options ; por ejemplo, AddPackageAsync(string packageUri, AddPackageOptions options).

En la tabla siguiente se muestran las permutaciones admitidas de verbos y destinos:

Verbo Camino Filename PackageFamilyName PackageFullName archivo: http(s): ms-uup: PackageSet
IsReady X X SO/WAS WAS X X WAS WAS
IsReadyOrNewerAvailable X X SO/WAS WAS X X WAS WAS
EnsureReady X X X X X X WAS WAS
Añadir SO/WAS X X X SO/WAS SO/WAS SO/WAS WAS
Stage SO/WAS X X X SO/WAS SO/WAS SO/WAS WAS
Register WAS SO/WAS SO/WAS SO/WAS SO/WAS X SO/WAS WAS
Eliminar X X WAS SO/WAS X X SO/WAS WAS
Reparación X X WAS WAS X X WAS WAS
Reset X X WAS WAS X X WAS WAS
IsProvisioned X X SO/WAS X X X WAS WAS
Aprovisionamiento X X SO/WAS X X X WAS WAS
Desaprovisionamiento X X SO/WAS X X X WAS WAS

Leyenda:

  • OS = Compatible con las API de Windows (OS) en la clase Windows.Management.Deployment.PackageManager .
  • WAS = Compatible con las API de SDK de Aplicaciones para Windows en la clase Microsoft.Windows.Management.Deployment.PackageDeploymentManager .
  • X = No compatible

Usability

Las API de administración de paquetes del SDK de aplicaciones de Windows (Microsoft.Windows.Management.Deployment) proporcionan varias mejoras de calidad de vida sobre las API de administración de paquetes en Windows.Management.Deployment (por ejemplo, PackageManager). Entre ellas se incluyen las siguientes:

  • Se produce un error en PackageManager.AddPackageByUriAsync, devolviendo ERROR_INSTALL_PACKAGE_DOWNGRADE, si ya está instalada una versión más reciente del paquete. Pero PackageDeploymentManager.AddPackageByUriAsync se realiza correctamente porque trata la solicitud como "instalar este paquete o una versión superior", de la manera en que las dependencias y otras referencias de paquete se controlan de forma rutinaria.
  • Se produce un error en PackageManager.AddPackageByUriAsync, devolviendo ERROR_PACKAGE_ALREADY_EXISTS, si esa versión exacta del paquete ya está instalada. PackageDeploymentManager.AddPackageByUriAsync se realiza correctamente porque el paquete solicitado está instalado.
  • Muchas operaciones packageManager aceptan un paquete de destino como un archivo, pero requieren que se exprese como un URI. PackageDeploymentManager proporciona invalidaciones que también la aceptan como una cadena.
  • PackageManager.RemovePackageByFullNameAsync produce un error si no se encuentra el paquete especificado. PackageDeploymentManager se realiza correctamente porque el paquete solicitado no está presente al final de la operación.
    • Esto se debe al principio de implementación principal que no importa el estado anterior del sistema; solo que se logra el estado final deseado.
  • Los métodos PackageManager aceptan permutaciones incoherentes (y a menudo inconvenientes) de expresar un paquete de destino. Por ejemplo, PackageManager admite la eliminación de un paquete por nombre completo del paquete, pero no por el nombre de familia del paquete. PackageDeploymentManager proporciona una API más completa que acepta identificadores adicionales.

Compatibilidad con la plataforma

Estas API solo están disponibles en Windows 10, versión 2004 (10.0; Compilación 19041) y versiones posteriores.

Hay disponible un subconjunto de funcionalidades en versiones más recientes. Por ejemplo, AddPackageOptions.ExpectedDigests requiere Windows 11, versión 22H2 (10.0; Compilación 22621) o posterior. Cualquier funcionalidad que requiera una versión de windows más reciente que windows 10, versión 2004 (10.0; La línea base de compilación 19041) tiene prestaciones para detectar en tiempo de ejecución si la plataforma actual admite la característica, por ejemplo:

var options = new AddPackageOptions();
if (options.IsLimitToExistingPackagesSupported)
{
    options.LimitToExistingPackages = true;
}

Clases

Nombre Description
AddPackageOptions

Especifica las opciones de implementación que puede configurar al usar el método AddPackageByUriAsync para agregar un paquete, un manifiesto de paquete o un archivo instalador de aplicación.

EnsureReadyOptions

Este espacio de nombres proporciona API de administración de paquetes MSIX comparables a las de la Windows. Management.Deployment espacio de nombres, pero con funcionalidad adicional, experiencia de desarrollador mejorada y optimizaciones de rendimiento.

Estas API de Windows Runtime (WinRT) permiten implementar y administrar software como paquetes MSIX. Puede instalar, actualizar, desinstalar, enumerar y administrar paquetes de otro modo. Estos son los escenarios en los que se centran las API:

  • Almacenar provisionalmente un paquete
  • Registro de un paquete
  • Agregar o actualizar un paquete
  • Quitar un paquete
  • Reparación de un paquete
  • Restablecer un paquete
  • Aprovisionamiento de un paquete
  • Desaprovisionamiento de un paquete

La funcionalidad adicional incluye:

  • IsReadyXxx. Determine si un paquete está listo para su uso.
  • Asegúrese de queReady. Determine si un paquete está listo para su uso y, si no es así, consícelo.
  • IsPackageRegistrationPending. Determine si hay una actualización en espera de registrarse.
  • Conjuntos de paquetes. Operaciones por lotes.
  • PackageRuntimeManager. Operaciones por lotes para su uso en tiempo de ejecución a través de dependencias dinámicas.
  • Facilidad de uso. Mejoras de calidad de vida.

Estructura de API

Los métodos para impulsar la actividad de implementación suelen seguir el patrón:

<verb>Package[Set][By<Type>][Suffix]Async(target, options)

Se admiten los verbos siguientes:

  • Es... Ready[OrNewerAvailable]
  • Asegúrese de... Listo
  • Añadir
  • Stage
  • Register
  • Eliminar
  • Reparación
  • Reset
  • Aprovisionamiento
  • Desaprovisionamiento

Esos métodos aceptan sus paquetes de destino como primer parámetro. Ese parámetro puede ser varios tipos de información, entre los que se incluyen:

  • Filename
  • Camino
  • PackageFamilyName
  • PackageFullName
  • Uri

! [NOTA] Los métodos con un destino de un URI se denominan ... ByUri....

! [NOTA] Los métodos con un destino de PackageFamilyName se denominan ... ByPackageFamilyName....

! [NOTA] Los métodos con un destino de PackageFullName se denominan ... ByPackageFullName....

! [NOTA] Métodos sin ... Por<tipo>... calificador acepta una cadena que puede contener uno o varios tipos de identificadores. Pueden variar para distintos verbos. Consulte la documentación de la API para ver los tipos de destino específicos admitidos por cada método.

Estos métodos aceptan opciones como un tipo coincidente <verb>Package[Set]Options ; por ejemplo, AddPackageAsync(string packageUri, AddPackageOptions options).

En la tabla siguiente se muestran las permutaciones admitidas de verbos y destinos:

Verbo Camino Filename PackageFamilyName PackageFullName archivo: http(s): ms-uup: PackageSet
IsReady X X SO/WAS WAS X X WAS WAS
IsReadyOrNewerAvailable X X SO/WAS WAS X X WAS WAS
EnsureReady X X X X X X WAS WAS
Añadir SO/WAS X X X SO/WAS SO/WAS SO/WAS WAS
Stage SO/WAS X X X SO/WAS SO/WAS SO/WAS WAS
Register WAS SO/WAS SO/WAS SO/WAS SO/WAS X SO/WAS WAS
Eliminar X X WAS SO/WAS X X SO/WAS WAS
Reparación X X WAS WAS X X WAS WAS
Reset X X WAS WAS X X WAS WAS
IsProvisioned X X SO/WAS X X X WAS WAS
Aprovisionamiento X X SO/WAS X X X WAS WAS
Desaprovisionamiento X X SO/WAS X X X WAS WAS

Leyenda:

  • OS = Compatible con las API de Windows (OS) en la clase Windows.Management.Deployment.PackageManager .
  • WAS = Compatible con las API de SDK de Aplicaciones para Windows en la clase Microsoft.Windows.Management.Deployment.PackageDeploymentManager .
  • X = No compatible

Usability

Las API de administración de paquetes del SDK de aplicaciones de Windows (Microsoft.Windows.Management.Deployment) proporcionan varias mejoras de calidad de vida sobre las API de administración de paquetes en Windows.Management.Deployment (por ejemplo, PackageManager). Entre ellas se incluyen las siguientes:

  • Se produce un error en PackageManager.AddPackageByUriAsync, devolviendo ERROR_INSTALL_PACKAGE_DOWNGRADE, si ya está instalada una versión más reciente del paquete. Pero PackageDeploymentManager.AddPackageByUriAsync se realiza correctamente porque trata la solicitud como "instalar este paquete o una versión superior", de la manera en que las dependencias y otras referencias de paquete se controlan de forma rutinaria.
  • Se produce un error en PackageManager.AddPackageByUriAsync, devolviendo ERROR_PACKAGE_ALREADY_EXISTS, si esa versión exacta del paquete ya está instalada. PackageDeploymentManager.AddPackageByUriAsync se realiza correctamente porque el paquete solicitado está instalado.
  • Muchas operaciones packageManager aceptan un paquete de destino como un archivo, pero requieren que se exprese como un URI. PackageDeploymentManager proporciona invalidaciones que también la aceptan como una cadena.
  • PackageManager.RemovePackageByFullNameAsync produce un error si no se encuentra el paquete especificado. PackageDeploymentManager se realiza correctamente porque el paquete solicitado no está presente al final de la operación.
    • Esto se debe al principio de implementación principal que no importa el estado anterior del sistema; solo que se logra el estado final deseado.
  • Los métodos PackageManager aceptan permutaciones incoherentes (y a menudo inconvenientes) de expresar un paquete de destino. Por ejemplo, PackageManager admite la eliminación de un paquete por nombre completo del paquete, pero no por el nombre de familia del paquete. PackageDeploymentManager proporciona una API más completa que acepta identificadores adicionales.

Compatibilidad con la plataforma

Estas API solo están disponibles en Windows 10, versión 2004 (10.0; Compilación 19041) y versiones posteriores.

Hay disponible un subconjunto de funcionalidades en versiones más recientes. Por ejemplo, AddPackageOptions.ExpectedDigests requiere Windows 11, versión 22H2 (10.0; Compilación 22621) o posterior. Cualquier funcionalidad que requiera una versión de windows más reciente que windows 10, versión 2004 (10.0; La línea base de compilación 19041) tiene prestaciones para detectar en tiempo de ejecución si la plataforma actual admite la característica, por ejemplo:

var options = new AddPackageOptions();
if (options.IsLimitToExistingPackagesSupported)
{
    options.LimitToExistingPackages = true;
}
PackageCertificateEkuValidator

Este espacio de nombres proporciona API de administración de paquetes MSIX comparables a las de la Windows. Management.Deployment espacio de nombres, pero con funcionalidad adicional, experiencia de desarrollador mejorada y optimizaciones de rendimiento.

Estas API de Windows Runtime (WinRT) permiten implementar y administrar software como paquetes MSIX. Puede instalar, actualizar, desinstalar, enumerar y administrar paquetes de otro modo. Estos son los escenarios en los que se centran las API:

  • Almacenar provisionalmente un paquete
  • Registro de un paquete
  • Agregar o actualizar un paquete
  • Quitar un paquete
  • Reparación de un paquete
  • Restablecer un paquete
  • Aprovisionamiento de un paquete
  • Desaprovisionamiento de un paquete

La funcionalidad adicional incluye:

  • IsReadyXxx. Determine si un paquete está listo para su uso.
  • Asegúrese de queReady. Determine si un paquete está listo para su uso y, si no es así, consícelo.
  • IsPackageRegistrationPending. Determine si hay una actualización en espera de registrarse.
  • Conjuntos de paquetes. Operaciones por lotes.
  • PackageRuntimeManager. Operaciones por lotes para su uso en tiempo de ejecución a través de dependencias dinámicas.
  • Facilidad de uso. Mejoras de calidad de vida.

Estructura de API

Los métodos para impulsar la actividad de implementación suelen seguir el patrón:

<verb>Package[Set][By<Type>][Suffix]Async(target, options)

Se admiten los verbos siguientes:

  • Es... Ready[OrNewerAvailable]
  • Asegúrese de... Listo
  • Añadir
  • Stage
  • Register
  • Eliminar
  • Reparación
  • Reset
  • Aprovisionamiento
  • Desaprovisionamiento

Esos métodos aceptan sus paquetes de destino como primer parámetro. Ese parámetro puede ser varios tipos de información, entre los que se incluyen:

  • Filename
  • Camino
  • PackageFamilyName
  • PackageFullName
  • Uri

! [NOTA] Los métodos con un destino de un URI se denominan ... ByUri....

! [NOTA] Los métodos con un destino de PackageFamilyName se denominan ... ByPackageFamilyName....

! [NOTA] Los métodos con un destino de PackageFullName se denominan ... ByPackageFullName....

! [NOTA] Métodos sin ... Por<tipo>... calificador acepta una cadena que puede contener uno o varios tipos de identificadores. Pueden variar para distintos verbos. Consulte la documentación de la API para ver los tipos de destino específicos admitidos por cada método.

Estos métodos aceptan opciones como un tipo coincidente <verb>Package[Set]Options ; por ejemplo, AddPackageAsync(string packageUri, AddPackageOptions options).

En la tabla siguiente se muestran las permutaciones admitidas de verbos y destinos:

Verbo Camino Filename PackageFamilyName PackageFullName archivo: http(s): ms-uup: PackageSet
IsReady X X SO/WAS WAS X X WAS WAS
IsReadyOrNewerAvailable X X SO/WAS WAS X X WAS WAS
EnsureReady X X X X X X WAS WAS
Añadir SO/WAS X X X SO/WAS SO/WAS SO/WAS WAS
Stage SO/WAS X X X SO/WAS SO/WAS SO/WAS WAS
Register WAS SO/WAS SO/WAS SO/WAS SO/WAS X SO/WAS WAS
Eliminar X X WAS SO/WAS X X SO/WAS WAS
Reparación X X WAS WAS X X WAS WAS
Reset X X WAS WAS X X WAS WAS
IsProvisioned X X SO/WAS X X X WAS WAS
Aprovisionamiento X X SO/WAS X X X WAS WAS
Desaprovisionamiento X X SO/WAS X X X WAS WAS

Leyenda:

  • OS = Compatible con las API de Windows (OS) en la clase Windows.Management.Deployment.PackageManager .
  • WAS = Compatible con las API de SDK de Aplicaciones para Windows en la clase Microsoft.Windows.Management.Deployment.PackageDeploymentManager .
  • X = No compatible

Usability

Las API de administración de paquetes del SDK de aplicaciones de Windows (Microsoft.Windows.Management.Deployment) proporcionan varias mejoras de calidad de vida sobre las API de administración de paquetes en Windows.Management.Deployment (por ejemplo, PackageManager). Entre ellas se incluyen las siguientes:

  • Se produce un error en PackageManager.AddPackageByUriAsync, devolviendo ERROR_INSTALL_PACKAGE_DOWNGRADE, si ya está instalada una versión más reciente del paquete. Pero PackageDeploymentManager.AddPackageByUriAsync se realiza correctamente porque trata la solicitud como "instalar este paquete o una versión superior", de la manera en que las dependencias y otras referencias de paquete se controlan de forma rutinaria.
  • Se produce un error en PackageManager.AddPackageByUriAsync, devolviendo ERROR_PACKAGE_ALREADY_EXISTS, si esa versión exacta del paquete ya está instalada. PackageDeploymentManager.AddPackageByUriAsync se realiza correctamente porque el paquete solicitado está instalado.
  • Muchas operaciones packageManager aceptan un paquete de destino como un archivo, pero requieren que se exprese como un URI. PackageDeploymentManager proporciona invalidaciones que también la aceptan como una cadena.
  • PackageManager.RemovePackageByFullNameAsync produce un error si no se encuentra el paquete especificado. PackageDeploymentManager se realiza correctamente porque el paquete solicitado no está presente al final de la operación.
    • Esto se debe al principio de implementación principal que no importa el estado anterior del sistema; solo que se logra el estado final deseado.
  • Los métodos PackageManager aceptan permutaciones incoherentes (y a menudo inconvenientes) de expresar un paquete de destino. Por ejemplo, PackageManager admite la eliminación de un paquete por nombre completo del paquete, pero no por el nombre de familia del paquete. PackageDeploymentManager proporciona una API más completa que acepta identificadores adicionales.

Compatibilidad con la plataforma

Estas API solo están disponibles en Windows 10, versión 2004 (10.0; Compilación 19041) y versiones posteriores.

Hay disponible un subconjunto de funcionalidades en versiones más recientes. Por ejemplo, AddPackageOptions.ExpectedDigests requiere Windows 11, versión 22H2 (10.0; Compilación 22621) o posterior. Cualquier funcionalidad que requiera una versión de windows más reciente que windows 10, versión 2004 (10.0; La línea base de compilación 19041) tiene prestaciones para detectar en tiempo de ejecución si la plataforma actual admite la característica, por ejemplo:

var options = new AddPackageOptions();
if (options.IsLimitToExistingPackagesSupported)
{
    options.LimitToExistingPackages = true;
}
PackageDeploymentManager

Administra el software disponible para un usuario.

PackageDeploymentResult

Proporciona el resultado de una solicitud de implementación.

PackageFamilyNameValidator

Este espacio de nombres proporciona API de administración de paquetes MSIX comparables a las de la Windows. Management.Deployment espacio de nombres, pero con funcionalidad adicional, experiencia de desarrollador mejorada y optimizaciones de rendimiento.

Estas API de Windows Runtime (WinRT) permiten implementar y administrar software como paquetes MSIX. Puede instalar, actualizar, desinstalar, enumerar y administrar paquetes de otro modo. Estos son los escenarios en los que se centran las API:

  • Almacenar provisionalmente un paquete
  • Registro de un paquete
  • Agregar o actualizar un paquete
  • Quitar un paquete
  • Reparación de un paquete
  • Restablecer un paquete
  • Aprovisionamiento de un paquete
  • Desaprovisionamiento de un paquete

La funcionalidad adicional incluye:

  • IsReadyXxx. Determine si un paquete está listo para su uso.
  • Asegúrese de queReady. Determine si un paquete está listo para su uso y, si no es así, consícelo.
  • IsPackageRegistrationPending. Determine si hay una actualización en espera de registrarse.
  • Conjuntos de paquetes. Operaciones por lotes.
  • PackageRuntimeManager. Operaciones por lotes para su uso en tiempo de ejecución a través de dependencias dinámicas.
  • Facilidad de uso. Mejoras de calidad de vida.

Estructura de API

Los métodos para impulsar la actividad de implementación suelen seguir el patrón:

<verb>Package[Set][By<Type>][Suffix]Async(target, options)

Se admiten los verbos siguientes:

  • Es... Ready[OrNewerAvailable]
  • Asegúrese de... Listo
  • Añadir
  • Stage
  • Register
  • Eliminar
  • Reparación
  • Reset
  • Aprovisionamiento
  • Desaprovisionamiento

Esos métodos aceptan sus paquetes de destino como primer parámetro. Ese parámetro puede ser varios tipos de información, entre los que se incluyen:

  • Filename
  • Camino
  • PackageFamilyName
  • PackageFullName
  • Uri

! [NOTA] Los métodos con un destino de un URI se denominan ... ByUri....

! [NOTA] Los métodos con un destino de PackageFamilyName se denominan ... ByPackageFamilyName....

! [NOTA] Los métodos con un destino de PackageFullName se denominan ... ByPackageFullName....

! [NOTA] Métodos sin ... Por<tipo>... calificador acepta una cadena que puede contener uno o varios tipos de identificadores. Pueden variar para distintos verbos. Consulte la documentación de la API para ver los tipos de destino específicos admitidos por cada método.

Estos métodos aceptan opciones como un tipo coincidente <verb>Package[Set]Options ; por ejemplo, AddPackageAsync(string packageUri, AddPackageOptions options).

En la tabla siguiente se muestran las permutaciones admitidas de verbos y destinos:

Verbo Camino Filename PackageFamilyName PackageFullName archivo: http(s): ms-uup: PackageSet
IsReady X X SO/WAS WAS X X WAS WAS
IsReadyOrNewerAvailable X X SO/WAS WAS X X WAS WAS
EnsureReady X X X X X X WAS WAS
Añadir SO/WAS X X X SO/WAS SO/WAS SO/WAS WAS
Stage SO/WAS X X X SO/WAS SO/WAS SO/WAS WAS
Register WAS SO/WAS SO/WAS SO/WAS SO/WAS X SO/WAS WAS
Eliminar X X WAS SO/WAS X X SO/WAS WAS
Reparación X X WAS WAS X X WAS WAS
Reset X X WAS WAS X X WAS WAS
IsProvisioned X X SO/WAS X X X WAS WAS
Aprovisionamiento X X SO/WAS X X X WAS WAS
Desaprovisionamiento X X SO/WAS X X X WAS WAS

Leyenda:

  • OS = Compatible con las API de Windows (OS) en la clase Windows.Management.Deployment.PackageManager .
  • WAS = Compatible con las API de SDK de Aplicaciones para Windows en la clase Microsoft.Windows.Management.Deployment.PackageDeploymentManager .
  • X = No compatible

Usability

Las API de administración de paquetes del SDK de aplicaciones de Windows (Microsoft.Windows.Management.Deployment) proporcionan varias mejoras de calidad de vida sobre las API de administración de paquetes en Windows.Management.Deployment (por ejemplo, PackageManager). Entre ellas se incluyen las siguientes:

  • Se produce un error en PackageManager.AddPackageByUriAsync, devolviendo ERROR_INSTALL_PACKAGE_DOWNGRADE, si ya está instalada una versión más reciente del paquete. Pero PackageDeploymentManager.AddPackageByUriAsync se realiza correctamente porque trata la solicitud como "instalar este paquete o una versión superior", de la manera en que las dependencias y otras referencias de paquete se controlan de forma rutinaria.
  • Se produce un error en PackageManager.AddPackageByUriAsync, devolviendo ERROR_PACKAGE_ALREADY_EXISTS, si esa versión exacta del paquete ya está instalada. PackageDeploymentManager.AddPackageByUriAsync se realiza correctamente porque el paquete solicitado está instalado.
  • Muchas operaciones packageManager aceptan un paquete de destino como un archivo, pero requieren que se exprese como un URI. PackageDeploymentManager proporciona invalidaciones que también la aceptan como una cadena.
  • PackageManager.RemovePackageByFullNameAsync produce un error si no se encuentra el paquete especificado. PackageDeploymentManager se realiza correctamente porque el paquete solicitado no está presente al final de la operación.
    • Esto se debe al principio de implementación principal que no importa el estado anterior del sistema; solo que se logra el estado final deseado.
  • Los métodos PackageManager aceptan permutaciones incoherentes (y a menudo inconvenientes) de expresar un paquete de destino. Por ejemplo, PackageManager admite la eliminación de un paquete por nombre completo del paquete, pero no por el nombre de familia del paquete. PackageDeploymentManager proporciona una API más completa que acepta identificadores adicionales.

Compatibilidad con la plataforma

Estas API solo están disponibles en Windows 10, versión 2004 (10.0; Compilación 19041) y versiones posteriores.

Hay disponible un subconjunto de funcionalidades en versiones más recientes. Por ejemplo, AddPackageOptions.ExpectedDigests requiere Windows 11, versión 22H2 (10.0; Compilación 22621) o posterior. Cualquier funcionalidad que requiera una versión de windows más reciente que windows 10, versión 2004 (10.0; La línea base de compilación 19041) tiene prestaciones para detectar en tiempo de ejecución si la plataforma actual admite la característica, por ejemplo:

var options = new AddPackageOptions();
if (options.IsLimitToExistingPackagesSupported)
{
    options.LimitToExistingPackages = true;
}
PackageMinimumVersionValidator

Este espacio de nombres proporciona API de administración de paquetes MSIX comparables a las de la Windows. Management.Deployment espacio de nombres, pero con funcionalidad adicional, experiencia de desarrollador mejorada y optimizaciones de rendimiento.

Estas API de Windows Runtime (WinRT) permiten implementar y administrar software como paquetes MSIX. Puede instalar, actualizar, desinstalar, enumerar y administrar paquetes de otro modo. Estos son los escenarios en los que se centran las API:

  • Almacenar provisionalmente un paquete
  • Registro de un paquete
  • Agregar o actualizar un paquete
  • Quitar un paquete
  • Reparación de un paquete
  • Restablecer un paquete
  • Aprovisionamiento de un paquete
  • Desaprovisionamiento de un paquete

La funcionalidad adicional incluye:

  • IsReadyXxx. Determine si un paquete está listo para su uso.
  • Asegúrese de queReady. Determine si un paquete está listo para su uso y, si no es así, consícelo.
  • IsPackageRegistrationPending. Determine si hay una actualización en espera de registrarse.
  • Conjuntos de paquetes. Operaciones por lotes.
  • PackageRuntimeManager. Operaciones por lotes para su uso en tiempo de ejecución a través de dependencias dinámicas.
  • Facilidad de uso. Mejoras de calidad de vida.

Estructura de API

Los métodos para impulsar la actividad de implementación suelen seguir el patrón:

<verb>Package[Set][By<Type>][Suffix]Async(target, options)

Se admiten los verbos siguientes:

  • Es... Ready[OrNewerAvailable]
  • Asegúrese de... Listo
  • Añadir
  • Stage
  • Register
  • Eliminar
  • Reparación
  • Reset
  • Aprovisionamiento
  • Desaprovisionamiento

Esos métodos aceptan sus paquetes de destino como primer parámetro. Ese parámetro puede ser varios tipos de información, entre los que se incluyen:

  • Filename
  • Camino
  • PackageFamilyName
  • PackageFullName
  • Uri

! [NOTA] Los métodos con un destino de un URI se denominan ... ByUri....

! [NOTA] Los métodos con un destino de PackageFamilyName se denominan ... ByPackageFamilyName....

! [NOTA] Los métodos con un destino de PackageFullName se denominan ... ByPackageFullName....

! [NOTA] Métodos sin ... Por<tipo>... calificador acepta una cadena que puede contener uno o varios tipos de identificadores. Pueden variar para distintos verbos. Consulte la documentación de la API para ver los tipos de destino específicos admitidos por cada método.

Estos métodos aceptan opciones como un tipo coincidente <verb>Package[Set]Options ; por ejemplo, AddPackageAsync(string packageUri, AddPackageOptions options).

En la tabla siguiente se muestran las permutaciones admitidas de verbos y destinos:

Verbo Camino Filename PackageFamilyName PackageFullName archivo: http(s): ms-uup: PackageSet
IsReady X X SO/WAS WAS X X WAS WAS
IsReadyOrNewerAvailable X X SO/WAS WAS X X WAS WAS
EnsureReady X X X X X X WAS WAS
Añadir SO/WAS X X X SO/WAS SO/WAS SO/WAS WAS
Stage SO/WAS X X X SO/WAS SO/WAS SO/WAS WAS
Register WAS SO/WAS SO/WAS SO/WAS SO/WAS X SO/WAS WAS
Eliminar X X WAS SO/WAS X X SO/WAS WAS
Reparación X X WAS WAS X X WAS WAS
Reset X X WAS WAS X X WAS WAS
IsProvisioned X X SO/WAS X X X WAS WAS
Aprovisionamiento X X SO/WAS X X X WAS WAS
Desaprovisionamiento X X SO/WAS X X X WAS WAS

Leyenda:

  • OS = Compatible con las API de Windows (OS) en la clase Windows.Management.Deployment.PackageManager .
  • WAS = Compatible con las API de SDK de Aplicaciones para Windows en la clase Microsoft.Windows.Management.Deployment.PackageDeploymentManager .
  • X = No compatible

Usability

Las API de administración de paquetes del SDK de aplicaciones de Windows (Microsoft.Windows.Management.Deployment) proporcionan varias mejoras de calidad de vida sobre las API de administración de paquetes en Windows.Management.Deployment (por ejemplo, PackageManager). Entre ellas se incluyen las siguientes:

  • Se produce un error en PackageManager.AddPackageByUriAsync, devolviendo ERROR_INSTALL_PACKAGE_DOWNGRADE, si ya está instalada una versión más reciente del paquete. Pero PackageDeploymentManager.AddPackageByUriAsync se realiza correctamente porque trata la solicitud como "instalar este paquete o una versión superior", de la manera en que las dependencias y otras referencias de paquete se controlan de forma rutinaria.
  • Se produce un error en PackageManager.AddPackageByUriAsync, devolviendo ERROR_PACKAGE_ALREADY_EXISTS, si esa versión exacta del paquete ya está instalada. PackageDeploymentManager.AddPackageByUriAsync se realiza correctamente porque el paquete solicitado está instalado.
  • Muchas operaciones packageManager aceptan un paquete de destino como un archivo, pero requieren que se exprese como un URI. PackageDeploymentManager proporciona invalidaciones que también la aceptan como una cadena.
  • PackageManager.RemovePackageByFullNameAsync produce un error si no se encuentra el paquete especificado. PackageDeploymentManager se realiza correctamente porque el paquete solicitado no está presente al final de la operación.
    • Esto se debe al principio de implementación principal que no importa el estado anterior del sistema; solo que se logra el estado final deseado.
  • Los métodos PackageManager aceptan permutaciones incoherentes (y a menudo inconvenientes) de expresar un paquete de destino. Por ejemplo, PackageManager admite la eliminación de un paquete por nombre completo del paquete, pero no por el nombre de familia del paquete. PackageDeploymentManager proporciona una API más completa que acepta identificadores adicionales.

Compatibilidad con la plataforma

Estas API solo están disponibles en Windows 10, versión 2004 (10.0; Compilación 19041) y versiones posteriores.

Hay disponible un subconjunto de funcionalidades en versiones más recientes. Por ejemplo, AddPackageOptions.ExpectedDigests requiere Windows 11, versión 22H2 (10.0; Compilación 22621) o posterior. Cualquier funcionalidad que requiera una versión de windows más reciente que windows 10, versión 2004 (10.0; La línea base de compilación 19041) tiene prestaciones para detectar en tiempo de ejecución si la plataforma actual admite la característica, por ejemplo:

var options = new AddPackageOptions();
if (options.IsLimitToExistingPackagesSupported)
{
    options.LimitToExistingPackages = true;
}
PackageRuntimeManager

La clase PackageRuntimeManager proporciona compatibilidad con dependencias dinámicas para las operaciones PackageSet , especialmente cuando es posible que el autor de la llamada no conozca los paquetes exactos implicados, por ejemplo, al dirigirse a paquetes a través ms-uup:de . PackageRuntimeManager determina los paquetes implicados para un PackageSet y los agrega dinámicamente al gráfico de paquetes del autor de la llamada.

PackageSet

Clase que representa un conjunto de paquetes, que es un grupo de paquetes en el que se va a operar con una solicitud. Un conjunto de paquetes proporciona un medio práctico para realizar varias operaciones.

! [NOTA] No hay ninguna garantía de ordenación de los elementos procesados en un PackageSet.

PackageSetItem

Representa un paquete en un PackageSet.

PackageSetItemRuntimeDisposition

Este espacio de nombres proporciona API de administración de paquetes MSIX comparables a las de la Windows. Management.Deployment espacio de nombres, pero con funcionalidad adicional, experiencia de desarrollador mejorada y optimizaciones de rendimiento.

Estas API de Windows Runtime (WinRT) permiten implementar y administrar software como paquetes MSIX. Puede instalar, actualizar, desinstalar, enumerar y administrar paquetes de otro modo. Estos son los escenarios en los que se centran las API:

  • Almacenar provisionalmente un paquete
  • Registro de un paquete
  • Agregar o actualizar un paquete
  • Quitar un paquete
  • Reparación de un paquete
  • Restablecer un paquete
  • Aprovisionamiento de un paquete
  • Desaprovisionamiento de un paquete

La funcionalidad adicional incluye:

  • IsReadyXxx. Determine si un paquete está listo para su uso.
  • Asegúrese de queReady. Determine si un paquete está listo para su uso y, si no es así, consícelo.
  • IsPackageRegistrationPending. Determine si hay una actualización en espera de registrarse.
  • Conjuntos de paquetes. Operaciones por lotes.
  • PackageRuntimeManager. Operaciones por lotes para su uso en tiempo de ejecución a través de dependencias dinámicas.
  • Facilidad de uso. Mejoras de calidad de vida.

Estructura de API

Los métodos para impulsar la actividad de implementación suelen seguir el patrón:

<verb>Package[Set][By<Type>][Suffix]Async(target, options)

Se admiten los verbos siguientes:

  • Es... Ready[OrNewerAvailable]
  • Asegúrese de... Listo
  • Añadir
  • Stage
  • Register
  • Eliminar
  • Reparación
  • Reset
  • Aprovisionamiento
  • Desaprovisionamiento

Esos métodos aceptan sus paquetes de destino como primer parámetro. Ese parámetro puede ser varios tipos de información, entre los que se incluyen:

  • Filename
  • Camino
  • PackageFamilyName
  • PackageFullName
  • Uri

! [NOTA] Los métodos con un destino de un URI se denominan ... ByUri....

! [NOTA] Los métodos con un destino de PackageFamilyName se denominan ... ByPackageFamilyName....

! [NOTA] Los métodos con un destino de PackageFullName se denominan ... ByPackageFullName....

! [NOTA] Métodos sin ... Por<tipo>... calificador acepta una cadena que puede contener uno o varios tipos de identificadores. Pueden variar para distintos verbos. Consulte la documentación de la API para ver los tipos de destino específicos admitidos por cada método.

Estos métodos aceptan opciones como un tipo coincidente <verb>Package[Set]Options ; por ejemplo, AddPackageAsync(string packageUri, AddPackageOptions options).

En la tabla siguiente se muestran las permutaciones admitidas de verbos y destinos:

Verbo Camino Filename PackageFamilyName PackageFullName archivo: http(s): ms-uup: PackageSet
IsReady X X SO/WAS WAS X X WAS WAS
IsReadyOrNewerAvailable X X SO/WAS WAS X X WAS WAS
EnsureReady X X X X X X WAS WAS
Añadir SO/WAS X X X SO/WAS SO/WAS SO/WAS WAS
Stage SO/WAS X X X SO/WAS SO/WAS SO/WAS WAS
Register WAS SO/WAS SO/WAS SO/WAS SO/WAS X SO/WAS WAS
Eliminar X X WAS SO/WAS X X SO/WAS WAS
Reparación X X WAS WAS X X WAS WAS
Reset X X WAS WAS X X WAS WAS
IsProvisioned X X SO/WAS X X X WAS WAS
Aprovisionamiento X X SO/WAS X X X WAS WAS
Desaprovisionamiento X X SO/WAS X X X WAS WAS

Leyenda:

  • OS = Compatible con las API de Windows (OS) en la clase Windows.Management.Deployment.PackageManager .
  • WAS = Compatible con las API de SDK de Aplicaciones para Windows en la clase Microsoft.Windows.Management.Deployment.PackageDeploymentManager .
  • X = No compatible

Usability

Las API de administración de paquetes del SDK de aplicaciones de Windows (Microsoft.Windows.Management.Deployment) proporcionan varias mejoras de calidad de vida sobre las API de administración de paquetes en Windows.Management.Deployment (por ejemplo, PackageManager). Entre ellas se incluyen las siguientes:

  • Se produce un error en PackageManager.AddPackageByUriAsync, devolviendo ERROR_INSTALL_PACKAGE_DOWNGRADE, si ya está instalada una versión más reciente del paquete. Pero PackageDeploymentManager.AddPackageByUriAsync se realiza correctamente porque trata la solicitud como "instalar este paquete o una versión superior", de la manera en que las dependencias y otras referencias de paquete se controlan de forma rutinaria.
  • Se produce un error en PackageManager.AddPackageByUriAsync, devolviendo ERROR_PACKAGE_ALREADY_EXISTS, si esa versión exacta del paquete ya está instalada. PackageDeploymentManager.AddPackageByUriAsync se realiza correctamente porque el paquete solicitado está instalado.
  • Muchas operaciones packageManager aceptan un paquete de destino como un archivo, pero requieren que se exprese como un URI. PackageDeploymentManager proporciona invalidaciones que también la aceptan como una cadena.
  • PackageManager.RemovePackageByFullNameAsync produce un error si no se encuentra el paquete especificado. PackageDeploymentManager se realiza correctamente porque el paquete solicitado no está presente al final de la operación.
    • Esto se debe al principio de implementación principal que no importa el estado anterior del sistema; solo que se logra el estado final deseado.
  • Los métodos PackageManager aceptan permutaciones incoherentes (y a menudo inconvenientes) de expresar un paquete de destino. Por ejemplo, PackageManager admite la eliminación de un paquete por nombre completo del paquete, pero no por el nombre de familia del paquete. PackageDeploymentManager proporciona una API más completa que acepta identificadores adicionales.

Compatibilidad con la plataforma

Estas API solo están disponibles en Windows 10, versión 2004 (10.0; Compilación 19041) y versiones posteriores.

Hay disponible un subconjunto de funcionalidades en versiones más recientes. Por ejemplo, AddPackageOptions.ExpectedDigests requiere Windows 11, versión 22H2 (10.0; Compilación 22621) o posterior. Cualquier funcionalidad que requiera una versión de windows más reciente que windows 10, versión 2004 (10.0; La línea base de compilación 19041) tiene prestaciones para detectar en tiempo de ejecución si la plataforma actual admite la característica, por ejemplo:

var options = new AddPackageOptions();
if (options.IsLimitToExistingPackagesSupported)
{
    options.LimitToExistingPackages = true;
}
PackageSetRuntimeDisposition

Este espacio de nombres proporciona API de administración de paquetes MSIX comparables a las de la Windows. Management.Deployment espacio de nombres, pero con funcionalidad adicional, experiencia de desarrollador mejorada y optimizaciones de rendimiento.

Estas API de Windows Runtime (WinRT) permiten implementar y administrar software como paquetes MSIX. Puede instalar, actualizar, desinstalar, enumerar y administrar paquetes de otro modo. Estos son los escenarios en los que se centran las API:

  • Almacenar provisionalmente un paquete
  • Registro de un paquete
  • Agregar o actualizar un paquete
  • Quitar un paquete
  • Reparación de un paquete
  • Restablecer un paquete
  • Aprovisionamiento de un paquete
  • Desaprovisionamiento de un paquete

La funcionalidad adicional incluye:

  • IsReadyXxx. Determine si un paquete está listo para su uso.
  • Asegúrese de queReady. Determine si un paquete está listo para su uso y, si no es así, consícelo.
  • IsPackageRegistrationPending. Determine si hay una actualización en espera de registrarse.
  • Conjuntos de paquetes. Operaciones por lotes.
  • PackageRuntimeManager. Operaciones por lotes para su uso en tiempo de ejecución a través de dependencias dinámicas.
  • Facilidad de uso. Mejoras de calidad de vida.

Estructura de API

Los métodos para impulsar la actividad de implementación suelen seguir el patrón:

<verb>Package[Set][By<Type>][Suffix]Async(target, options)

Se admiten los verbos siguientes:

  • Es... Ready[OrNewerAvailable]
  • Asegúrese de... Listo
  • Añadir
  • Stage
  • Register
  • Eliminar
  • Reparación
  • Reset
  • Aprovisionamiento
  • Desaprovisionamiento

Esos métodos aceptan sus paquetes de destino como primer parámetro. Ese parámetro puede ser varios tipos de información, entre los que se incluyen:

  • Filename
  • Camino
  • PackageFamilyName
  • PackageFullName
  • Uri

! [NOTA] Los métodos con un destino de un URI se denominan ... ByUri....

! [NOTA] Los métodos con un destino de PackageFamilyName se denominan ... ByPackageFamilyName....

! [NOTA] Los métodos con un destino de PackageFullName se denominan ... ByPackageFullName....

! [NOTA] Métodos sin ... Por<tipo>... calificador acepta una cadena que puede contener uno o varios tipos de identificadores. Pueden variar para distintos verbos. Consulte la documentación de la API para ver los tipos de destino específicos admitidos por cada método.

Estos métodos aceptan opciones como un tipo coincidente <verb>Package[Set]Options ; por ejemplo, AddPackageAsync(string packageUri, AddPackageOptions options).

En la tabla siguiente se muestran las permutaciones admitidas de verbos y destinos:

Verbo Camino Filename PackageFamilyName PackageFullName archivo: http(s): ms-uup: PackageSet
IsReady X X SO/WAS WAS X X WAS WAS
IsReadyOrNewerAvailable X X SO/WAS WAS X X WAS WAS
EnsureReady X X X X X X WAS WAS
Añadir SO/WAS X X X SO/WAS SO/WAS SO/WAS WAS
Stage SO/WAS X X X SO/WAS SO/WAS SO/WAS WAS
Register WAS SO/WAS SO/WAS SO/WAS SO/WAS X SO/WAS WAS
Eliminar X X WAS SO/WAS X X SO/WAS WAS
Reparación X X WAS WAS X X WAS WAS
Reset X X WAS WAS X X WAS WAS
IsProvisioned X X SO/WAS X X X WAS WAS
Aprovisionamiento X X SO/WAS X X X WAS WAS
Desaprovisionamiento X X SO/WAS X X X WAS WAS

Leyenda:

  • OS = Compatible con las API de Windows (OS) en la clase Windows.Management.Deployment.PackageManager .
  • WAS = Compatible con las API de SDK de Aplicaciones para Windows en la clase Microsoft.Windows.Management.Deployment.PackageDeploymentManager .
  • X = No compatible

Usability

Las API de administración de paquetes del SDK de aplicaciones de Windows (Microsoft.Windows.Management.Deployment) proporcionan varias mejoras de calidad de vida sobre las API de administración de paquetes en Windows.Management.Deployment (por ejemplo, PackageManager). Entre ellas se incluyen las siguientes:

  • Se produce un error en PackageManager.AddPackageByUriAsync, devolviendo ERROR_INSTALL_PACKAGE_DOWNGRADE, si ya está instalada una versión más reciente del paquete. Pero PackageDeploymentManager.AddPackageByUriAsync se realiza correctamente porque trata la solicitud como "instalar este paquete o una versión superior", de la manera en que las dependencias y otras referencias de paquete se controlan de forma rutinaria.
  • Se produce un error en PackageManager.AddPackageByUriAsync, devolviendo ERROR_PACKAGE_ALREADY_EXISTS, si esa versión exacta del paquete ya está instalada. PackageDeploymentManager.AddPackageByUriAsync se realiza correctamente porque el paquete solicitado está instalado.
  • Muchas operaciones packageManager aceptan un paquete de destino como un archivo, pero requieren que se exprese como un URI. PackageDeploymentManager proporciona invalidaciones que también la aceptan como una cadena.
  • PackageManager.RemovePackageByFullNameAsync produce un error si no se encuentra el paquete especificado. PackageDeploymentManager se realiza correctamente porque el paquete solicitado no está presente al final de la operación.
    • Esto se debe al principio de implementación principal que no importa el estado anterior del sistema; solo que se logra el estado final deseado.
  • Los métodos PackageManager aceptan permutaciones incoherentes (y a menudo inconvenientes) de expresar un paquete de destino. Por ejemplo, PackageManager admite la eliminación de un paquete por nombre completo del paquete, pero no por el nombre de familia del paquete. PackageDeploymentManager proporciona una API más completa que acepta identificadores adicionales.

Compatibilidad con la plataforma

Estas API solo están disponibles en Windows 10, versión 2004 (10.0; Compilación 19041) y versiones posteriores.

Hay disponible un subconjunto de funcionalidades en versiones más recientes. Por ejemplo, AddPackageOptions.ExpectedDigests requiere Windows 11, versión 22H2 (10.0; Compilación 22621) o posterior. Cualquier funcionalidad que requiera una versión de windows más reciente que windows 10, versión 2004 (10.0; La línea base de compilación 19041) tiene prestaciones para detectar en tiempo de ejecución si la plataforma actual admite la característica, por ejemplo:

var options = new AddPackageOptions();
if (options.IsLimitToExistingPackagesSupported)
{
    options.LimitToExistingPackages = true;
}
PackageValidationEventArgs

Este espacio de nombres proporciona API de administración de paquetes MSIX comparables a las de la Windows. Management.Deployment espacio de nombres, pero con funcionalidad adicional, experiencia de desarrollador mejorada y optimizaciones de rendimiento.

Estas API de Windows Runtime (WinRT) permiten implementar y administrar software como paquetes MSIX. Puede instalar, actualizar, desinstalar, enumerar y administrar paquetes de otro modo. Estos son los escenarios en los que se centran las API:

  • Almacenar provisionalmente un paquete
  • Registro de un paquete
  • Agregar o actualizar un paquete
  • Quitar un paquete
  • Reparación de un paquete
  • Restablecer un paquete
  • Aprovisionamiento de un paquete
  • Desaprovisionamiento de un paquete

La funcionalidad adicional incluye:

  • IsReadyXxx. Determine si un paquete está listo para su uso.
  • Asegúrese de queReady. Determine si un paquete está listo para su uso y, si no es así, consícelo.
  • IsPackageRegistrationPending. Determine si hay una actualización en espera de registrarse.
  • Conjuntos de paquetes. Operaciones por lotes.
  • PackageRuntimeManager. Operaciones por lotes para su uso en tiempo de ejecución a través de dependencias dinámicas.
  • Facilidad de uso. Mejoras de calidad de vida.

Estructura de API

Los métodos para impulsar la actividad de implementación suelen seguir el patrón:

<verb>Package[Set][By<Type>][Suffix]Async(target, options)

Se admiten los verbos siguientes:

  • Es... Ready[OrNewerAvailable]
  • Asegúrese de... Listo
  • Añadir
  • Stage
  • Register
  • Eliminar
  • Reparación
  • Reset
  • Aprovisionamiento
  • Desaprovisionamiento

Esos métodos aceptan sus paquetes de destino como primer parámetro. Ese parámetro puede ser varios tipos de información, entre los que se incluyen:

  • Filename
  • Camino
  • PackageFamilyName
  • PackageFullName
  • Uri

! [NOTA] Los métodos con un destino de un URI se denominan ... ByUri....

! [NOTA] Los métodos con un destino de PackageFamilyName se denominan ... ByPackageFamilyName....

! [NOTA] Los métodos con un destino de PackageFullName se denominan ... ByPackageFullName....

! [NOTA] Métodos sin ... Por<tipo>... calificador acepta una cadena que puede contener uno o varios tipos de identificadores. Pueden variar para distintos verbos. Consulte la documentación de la API para ver los tipos de destino específicos admitidos por cada método.

Estos métodos aceptan opciones como un tipo coincidente <verb>Package[Set]Options ; por ejemplo, AddPackageAsync(string packageUri, AddPackageOptions options).

En la tabla siguiente se muestran las permutaciones admitidas de verbos y destinos:

Verbo Camino Filename PackageFamilyName PackageFullName archivo: http(s): ms-uup: PackageSet
IsReady X X SO/WAS WAS X X WAS WAS
IsReadyOrNewerAvailable X X SO/WAS WAS X X WAS WAS
EnsureReady X X X X X X WAS WAS
Añadir SO/WAS X X X SO/WAS SO/WAS SO/WAS WAS
Stage SO/WAS X X X SO/WAS SO/WAS SO/WAS WAS
Register WAS SO/WAS SO/WAS SO/WAS SO/WAS X SO/WAS WAS
Eliminar X X WAS SO/WAS X X SO/WAS WAS
Reparación X X WAS WAS X X WAS WAS
Reset X X WAS WAS X X WAS WAS
IsProvisioned X X SO/WAS X X X WAS WAS
Aprovisionamiento X X SO/WAS X X X WAS WAS
Desaprovisionamiento X X SO/WAS X X X WAS WAS

Leyenda:

  • OS = Compatible con las API de Windows (OS) en la clase Windows.Management.Deployment.PackageManager .
  • WAS = Compatible con las API de SDK de Aplicaciones para Windows en la clase Microsoft.Windows.Management.Deployment.PackageDeploymentManager .
  • X = No compatible

Usability

Las API de administración de paquetes del SDK de aplicaciones de Windows (Microsoft.Windows.Management.Deployment) proporcionan varias mejoras de calidad de vida sobre las API de administración de paquetes en Windows.Management.Deployment (por ejemplo, PackageManager). Entre ellas se incluyen las siguientes:

  • Se produce un error en PackageManager.AddPackageByUriAsync, devolviendo ERROR_INSTALL_PACKAGE_DOWNGRADE, si ya está instalada una versión más reciente del paquete. Pero PackageDeploymentManager.AddPackageByUriAsync se realiza correctamente porque trata la solicitud como "instalar este paquete o una versión superior", de la manera en que las dependencias y otras referencias de paquete se controlan de forma rutinaria.
  • Se produce un error en PackageManager.AddPackageByUriAsync, devolviendo ERROR_PACKAGE_ALREADY_EXISTS, si esa versión exacta del paquete ya está instalada. PackageDeploymentManager.AddPackageByUriAsync se realiza correctamente porque el paquete solicitado está instalado.
  • Muchas operaciones packageManager aceptan un paquete de destino como un archivo, pero requieren que se exprese como un URI. PackageDeploymentManager proporciona invalidaciones que también la aceptan como una cadena.
  • PackageManager.RemovePackageByFullNameAsync produce un error si no se encuentra el paquete especificado. PackageDeploymentManager se realiza correctamente porque el paquete solicitado no está presente al final de la operación.
    • Esto se debe al principio de implementación principal que no importa el estado anterior del sistema; solo que se logra el estado final deseado.
  • Los métodos PackageManager aceptan permutaciones incoherentes (y a menudo inconvenientes) de expresar un paquete de destino. Por ejemplo, PackageManager admite la eliminación de un paquete por nombre completo del paquete, pero no por el nombre de familia del paquete. PackageDeploymentManager proporciona una API más completa que acepta identificadores adicionales.

Compatibilidad con la plataforma

Estas API solo están disponibles en Windows 10, versión 2004 (10.0; Compilación 19041) y versiones posteriores.

Hay disponible un subconjunto de funcionalidades en versiones más recientes. Por ejemplo, AddPackageOptions.ExpectedDigests requiere Windows 11, versión 22H2 (10.0; Compilación 22621) o posterior. Cualquier funcionalidad que requiera una versión de windows más reciente que windows 10, versión 2004 (10.0; La línea base de compilación 19041) tiene prestaciones para detectar en tiempo de ejecución si la plataforma actual admite la característica, por ejemplo:

var options = new AddPackageOptions();
if (options.IsLimitToExistingPackagesSupported)
{
    options.LimitToExistingPackages = true;
}
PackageValidationEventSource

Este espacio de nombres proporciona API de administración de paquetes MSIX comparables a las de la Windows. Management.Deployment espacio de nombres, pero con funcionalidad adicional, experiencia de desarrollador mejorada y optimizaciones de rendimiento.

Estas API de Windows Runtime (WinRT) permiten implementar y administrar software como paquetes MSIX. Puede instalar, actualizar, desinstalar, enumerar y administrar paquetes de otro modo. Estos son los escenarios en los que se centran las API:

  • Almacenar provisionalmente un paquete
  • Registro de un paquete
  • Agregar o actualizar un paquete
  • Quitar un paquete
  • Reparación de un paquete
  • Restablecer un paquete
  • Aprovisionamiento de un paquete
  • Desaprovisionamiento de un paquete

La funcionalidad adicional incluye:

  • IsReadyXxx. Determine si un paquete está listo para su uso.
  • Asegúrese de queReady. Determine si un paquete está listo para su uso y, si no es así, consícelo.
  • IsPackageRegistrationPending. Determine si hay una actualización en espera de registrarse.
  • Conjuntos de paquetes. Operaciones por lotes.
  • PackageRuntimeManager. Operaciones por lotes para su uso en tiempo de ejecución a través de dependencias dinámicas.
  • Facilidad de uso. Mejoras de calidad de vida.

Estructura de API

Los métodos para impulsar la actividad de implementación suelen seguir el patrón:

<verb>Package[Set][By<Type>][Suffix]Async(target, options)

Se admiten los verbos siguientes:

  • Es... Ready[OrNewerAvailable]
  • Asegúrese de... Listo
  • Añadir
  • Stage
  • Register
  • Eliminar
  • Reparación
  • Reset
  • Aprovisionamiento
  • Desaprovisionamiento

Esos métodos aceptan sus paquetes de destino como primer parámetro. Ese parámetro puede ser varios tipos de información, entre los que se incluyen:

  • Filename
  • Camino
  • PackageFamilyName
  • PackageFullName
  • Uri

! [NOTA] Los métodos con un destino de un URI se denominan ... ByUri....

! [NOTA] Los métodos con un destino de PackageFamilyName se denominan ... ByPackageFamilyName....

! [NOTA] Los métodos con un destino de PackageFullName se denominan ... ByPackageFullName....

! [NOTA] Métodos sin ... Por<tipo>... calificador acepta una cadena que puede contener uno o varios tipos de identificadores. Pueden variar para distintos verbos. Consulte la documentación de la API para ver los tipos de destino específicos admitidos por cada método.

Estos métodos aceptan opciones como un tipo coincidente <verb>Package[Set]Options ; por ejemplo, AddPackageAsync(string packageUri, AddPackageOptions options).

En la tabla siguiente se muestran las permutaciones admitidas de verbos y destinos:

Verbo Camino Filename PackageFamilyName PackageFullName archivo: http(s): ms-uup: PackageSet
IsReady X X SO/WAS WAS X X WAS WAS
IsReadyOrNewerAvailable X X SO/WAS WAS X X WAS WAS
EnsureReady X X X X X X WAS WAS
Añadir SO/WAS X X X SO/WAS SO/WAS SO/WAS WAS
Stage SO/WAS X X X SO/WAS SO/WAS SO/WAS WAS
Register WAS SO/WAS SO/WAS SO/WAS SO/WAS X SO/WAS WAS
Eliminar X X WAS SO/WAS X X SO/WAS WAS
Reparación X X WAS WAS X X WAS WAS
Reset X X WAS WAS X X WAS WAS
IsProvisioned X X SO/WAS X X X WAS WAS
Aprovisionamiento X X SO/WAS X X X WAS WAS
Desaprovisionamiento X X SO/WAS X X X WAS WAS

Leyenda:

  • OS = Compatible con las API de Windows (OS) en la clase Windows.Management.Deployment.PackageManager .
  • WAS = Compatible con las API de SDK de Aplicaciones para Windows en la clase Microsoft.Windows.Management.Deployment.PackageDeploymentManager .
  • X = No compatible

Usability

Las API de administración de paquetes del SDK de aplicaciones de Windows (Microsoft.Windows.Management.Deployment) proporcionan varias mejoras de calidad de vida sobre las API de administración de paquetes en Windows.Management.Deployment (por ejemplo, PackageManager). Entre ellas se incluyen las siguientes:

  • Se produce un error en PackageManager.AddPackageByUriAsync, devolviendo ERROR_INSTALL_PACKAGE_DOWNGRADE, si ya está instalada una versión más reciente del paquete. Pero PackageDeploymentManager.AddPackageByUriAsync se realiza correctamente porque trata la solicitud como "instalar este paquete o una versión superior", de la manera en que las dependencias y otras referencias de paquete se controlan de forma rutinaria.
  • Se produce un error en PackageManager.AddPackageByUriAsync, devolviendo ERROR_PACKAGE_ALREADY_EXISTS, si esa versión exacta del paquete ya está instalada. PackageDeploymentManager.AddPackageByUriAsync se realiza correctamente porque el paquete solicitado está instalado.
  • Muchas operaciones packageManager aceptan un paquete de destino como un archivo, pero requieren que se exprese como un URI. PackageDeploymentManager proporciona invalidaciones que también la aceptan como una cadena.
  • PackageManager.RemovePackageByFullNameAsync produce un error si no se encuentra el paquete especificado. PackageDeploymentManager se realiza correctamente porque el paquete solicitado no está presente al final de la operación.
    • Esto se debe al principio de implementación principal que no importa el estado anterior del sistema; solo que se logra el estado final deseado.
  • Los métodos PackageManager aceptan permutaciones incoherentes (y a menudo inconvenientes) de expresar un paquete de destino. Por ejemplo, PackageManager admite la eliminación de un paquete por nombre completo del paquete, pero no por el nombre de familia del paquete. PackageDeploymentManager proporciona una API más completa que acepta identificadores adicionales.

Compatibilidad con la plataforma

Estas API solo están disponibles en Windows 10, versión 2004 (10.0; Compilación 19041) y versiones posteriores.

Hay disponible un subconjunto de funcionalidades en versiones más recientes. Por ejemplo, AddPackageOptions.ExpectedDigests requiere Windows 11, versión 22H2 (10.0; Compilación 22621) o posterior. Cualquier funcionalidad que requiera una versión de windows más reciente que windows 10, versión 2004 (10.0; La línea base de compilación 19041) tiene prestaciones para detectar en tiempo de ejecución si la plataforma actual admite la característica, por ejemplo:

var options = new AddPackageOptions();
if (options.IsLimitToExistingPackagesSupported)
{
    options.LimitToExistingPackages = true;
}
PackageValidationHandler

Este espacio de nombres proporciona API de administración de paquetes MSIX comparables a las de la Windows. Management.Deployment espacio de nombres, pero con funcionalidad adicional, experiencia de desarrollador mejorada y optimizaciones de rendimiento.

Estas API de Windows Runtime (WinRT) permiten implementar y administrar software como paquetes MSIX. Puede instalar, actualizar, desinstalar, enumerar y administrar paquetes de otro modo. Estos son los escenarios en los que se centran las API:

  • Almacenar provisionalmente un paquete
  • Registro de un paquete
  • Agregar o actualizar un paquete
  • Quitar un paquete
  • Reparación de un paquete
  • Restablecer un paquete
  • Aprovisionamiento de un paquete
  • Desaprovisionamiento de un paquete

La funcionalidad adicional incluye:

  • IsReadyXxx. Determine si un paquete está listo para su uso.
  • Asegúrese de queReady. Determine si un paquete está listo para su uso y, si no es así, consícelo.
  • IsPackageRegistrationPending. Determine si hay una actualización en espera de registrarse.
  • Conjuntos de paquetes. Operaciones por lotes.
  • PackageRuntimeManager. Operaciones por lotes para su uso en tiempo de ejecución a través de dependencias dinámicas.
  • Facilidad de uso. Mejoras de calidad de vida.

Estructura de API

Los métodos para impulsar la actividad de implementación suelen seguir el patrón:

<verb>Package[Set][By<Type>][Suffix]Async(target, options)

Se admiten los verbos siguientes:

  • Es... Ready[OrNewerAvailable]
  • Asegúrese de... Listo
  • Añadir
  • Stage
  • Register
  • Eliminar
  • Reparación
  • Reset
  • Aprovisionamiento
  • Desaprovisionamiento

Esos métodos aceptan sus paquetes de destino como primer parámetro. Ese parámetro puede ser varios tipos de información, entre los que se incluyen:

  • Filename
  • Camino
  • PackageFamilyName
  • PackageFullName
  • Uri

! [NOTA] Los métodos con un destino de un URI se denominan ... ByUri....

! [NOTA] Los métodos con un destino de PackageFamilyName se denominan ... ByPackageFamilyName....

! [NOTA] Los métodos con un destino de PackageFullName se denominan ... ByPackageFullName....

! [NOTA] Métodos sin ... Por<tipo>... calificador acepta una cadena que puede contener uno o varios tipos de identificadores. Pueden variar para distintos verbos. Consulte la documentación de la API para ver los tipos de destino específicos admitidos por cada método.

Estos métodos aceptan opciones como un tipo coincidente <verb>Package[Set]Options ; por ejemplo, AddPackageAsync(string packageUri, AddPackageOptions options).

En la tabla siguiente se muestran las permutaciones admitidas de verbos y destinos:

Verbo Camino Filename PackageFamilyName PackageFullName archivo: http(s): ms-uup: PackageSet
IsReady X X SO/WAS WAS X X WAS WAS
IsReadyOrNewerAvailable X X SO/WAS WAS X X WAS WAS
EnsureReady X X X X X X WAS WAS
Añadir SO/WAS X X X SO/WAS SO/WAS SO/WAS WAS
Stage SO/WAS X X X SO/WAS SO/WAS SO/WAS WAS
Register WAS SO/WAS SO/WAS SO/WAS SO/WAS X SO/WAS WAS
Eliminar X X WAS SO/WAS X X SO/WAS WAS
Reparación X X WAS WAS X X WAS WAS
Reset X X WAS WAS X X WAS WAS
IsProvisioned X X SO/WAS X X X WAS WAS
Aprovisionamiento X X SO/WAS X X X WAS WAS
Desaprovisionamiento X X SO/WAS X X X WAS WAS

Leyenda:

  • OS = Compatible con las API de Windows (OS) en la clase Windows.Management.Deployment.PackageManager .
  • WAS = Compatible con las API de SDK de Aplicaciones para Windows en la clase Microsoft.Windows.Management.Deployment.PackageDeploymentManager .
  • X = No compatible

Usability

Las API de administración de paquetes del SDK de aplicaciones de Windows (Microsoft.Windows.Management.Deployment) proporcionan varias mejoras de calidad de vida sobre las API de administración de paquetes en Windows.Management.Deployment (por ejemplo, PackageManager). Entre ellas se incluyen las siguientes:

  • Se produce un error en PackageManager.AddPackageByUriAsync, devolviendo ERROR_INSTALL_PACKAGE_DOWNGRADE, si ya está instalada una versión más reciente del paquete. Pero PackageDeploymentManager.AddPackageByUriAsync se realiza correctamente porque trata la solicitud como "instalar este paquete o una versión superior", de la manera en que las dependencias y otras referencias de paquete se controlan de forma rutinaria.
  • Se produce un error en PackageManager.AddPackageByUriAsync, devolviendo ERROR_PACKAGE_ALREADY_EXISTS, si esa versión exacta del paquete ya está instalada. PackageDeploymentManager.AddPackageByUriAsync se realiza correctamente porque el paquete solicitado está instalado.
  • Muchas operaciones packageManager aceptan un paquete de destino como un archivo, pero requieren que se exprese como un URI. PackageDeploymentManager proporciona invalidaciones que también la aceptan como una cadena.
  • PackageManager.RemovePackageByFullNameAsync produce un error si no se encuentra el paquete especificado. PackageDeploymentManager se realiza correctamente porque el paquete solicitado no está presente al final de la operación.
    • Esto se debe al principio de implementación principal que no importa el estado anterior del sistema; solo que se logra el estado final deseado.
  • Los métodos PackageManager aceptan permutaciones incoherentes (y a menudo inconvenientes) de expresar un paquete de destino. Por ejemplo, PackageManager admite la eliminación de un paquete por nombre completo del paquete, pero no por el nombre de familia del paquete. PackageDeploymentManager proporciona una API más completa que acepta identificadores adicionales.

Compatibilidad con la plataforma

Estas API solo están disponibles en Windows 10, versión 2004 (10.0; Compilación 19041) y versiones posteriores.

Hay disponible un subconjunto de funcionalidades en versiones más recientes. Por ejemplo, AddPackageOptions.ExpectedDigests requiere Windows 11, versión 22H2 (10.0; Compilación 22621) o posterior. Cualquier funcionalidad que requiera una versión de windows más reciente que windows 10, versión 2004 (10.0; La línea base de compilación 19041) tiene prestaciones para detectar en tiempo de ejecución si la plataforma actual admite la característica, por ejemplo:

var options = new AddPackageOptions();
if (options.IsLimitToExistingPackagesSupported)
{
    options.LimitToExistingPackages = true;
}
PackageVolume

Representa un volumen de almacenamiento de paquetes.

ProvisionPackageOptions

Este espacio de nombres proporciona API de administración de paquetes MSIX comparables a las de la Windows. Management.Deployment espacio de nombres, pero con funcionalidad adicional, experiencia de desarrollador mejorada y optimizaciones de rendimiento.

Estas API de Windows Runtime (WinRT) permiten implementar y administrar software como paquetes MSIX. Puede instalar, actualizar, desinstalar, enumerar y administrar paquetes de otro modo. Estos son los escenarios en los que se centran las API:

  • Almacenar provisionalmente un paquete
  • Registro de un paquete
  • Agregar o actualizar un paquete
  • Quitar un paquete
  • Reparación de un paquete
  • Restablecer un paquete
  • Aprovisionamiento de un paquete
  • Desaprovisionamiento de un paquete

La funcionalidad adicional incluye:

  • IsReadyXxx. Determine si un paquete está listo para su uso.
  • Asegúrese de queReady. Determine si un paquete está listo para su uso y, si no es así, consícelo.
  • IsPackageRegistrationPending. Determine si hay una actualización en espera de registrarse.
  • Conjuntos de paquetes. Operaciones por lotes.
  • PackageRuntimeManager. Operaciones por lotes para su uso en tiempo de ejecución a través de dependencias dinámicas.
  • Facilidad de uso. Mejoras de calidad de vida.

Estructura de API

Los métodos para impulsar la actividad de implementación suelen seguir el patrón:

<verb>Package[Set][By<Type>][Suffix]Async(target, options)

Se admiten los verbos siguientes:

  • Es... Ready[OrNewerAvailable]
  • Asegúrese de... Listo
  • Añadir
  • Stage
  • Register
  • Eliminar
  • Reparación
  • Reset
  • Aprovisionamiento
  • Desaprovisionamiento

Esos métodos aceptan sus paquetes de destino como primer parámetro. Ese parámetro puede ser varios tipos de información, entre los que se incluyen:

  • Filename
  • Camino
  • PackageFamilyName
  • PackageFullName
  • Uri

! [NOTA] Los métodos con un destino de un URI se denominan ... ByUri....

! [NOTA] Los métodos con un destino de PackageFamilyName se denominan ... ByPackageFamilyName....

! [NOTA] Los métodos con un destino de PackageFullName se denominan ... ByPackageFullName....

! [NOTA] Métodos sin ... Por<tipo>... calificador acepta una cadena que puede contener uno o varios tipos de identificadores. Pueden variar para distintos verbos. Consulte la documentación de la API para ver los tipos de destino específicos admitidos por cada método.

Estos métodos aceptan opciones como un tipo coincidente <verb>Package[Set]Options ; por ejemplo, AddPackageAsync(string packageUri, AddPackageOptions options).

En la tabla siguiente se muestran las permutaciones admitidas de verbos y destinos:

Verbo Camino Filename PackageFamilyName PackageFullName archivo: http(s): ms-uup: PackageSet
IsReady X X SO/WAS WAS X X WAS WAS
IsReadyOrNewerAvailable X X SO/WAS WAS X X WAS WAS
EnsureReady X X X X X X WAS WAS
Añadir SO/WAS X X X SO/WAS SO/WAS SO/WAS WAS
Stage SO/WAS X X X SO/WAS SO/WAS SO/WAS WAS
Register WAS SO/WAS SO/WAS SO/WAS SO/WAS X SO/WAS WAS
Eliminar X X WAS SO/WAS X X SO/WAS WAS
Reparación X X WAS WAS X X WAS WAS
Reset X X WAS WAS X X WAS WAS
IsProvisioned X X SO/WAS X X X WAS WAS
Aprovisionamiento X X SO/WAS X X X WAS WAS
Desaprovisionamiento X X SO/WAS X X X WAS WAS

Leyenda:

  • OS = Compatible con las API de Windows (OS) en la clase Windows.Management.Deployment.PackageManager .
  • WAS = Compatible con las API de SDK de Aplicaciones para Windows en la clase Microsoft.Windows.Management.Deployment.PackageDeploymentManager .
  • X = No compatible

Usability

Las API de administración de paquetes del SDK de aplicaciones de Windows (Microsoft.Windows.Management.Deployment) proporcionan varias mejoras de calidad de vida sobre las API de administración de paquetes en Windows.Management.Deployment (por ejemplo, PackageManager). Entre ellas se incluyen las siguientes:

  • Se produce un error en PackageManager.AddPackageByUriAsync, devolviendo ERROR_INSTALL_PACKAGE_DOWNGRADE, si ya está instalada una versión más reciente del paquete. Pero PackageDeploymentManager.AddPackageByUriAsync se realiza correctamente porque trata la solicitud como "instalar este paquete o una versión superior", de la manera en que las dependencias y otras referencias de paquete se controlan de forma rutinaria.
  • Se produce un error en PackageManager.AddPackageByUriAsync, devolviendo ERROR_PACKAGE_ALREADY_EXISTS, si esa versión exacta del paquete ya está instalada. PackageDeploymentManager.AddPackageByUriAsync se realiza correctamente porque el paquete solicitado está instalado.
  • Muchas operaciones packageManager aceptan un paquete de destino como un archivo, pero requieren que se exprese como un URI. PackageDeploymentManager proporciona invalidaciones que también la aceptan como una cadena.
  • PackageManager.RemovePackageByFullNameAsync produce un error si no se encuentra el paquete especificado. PackageDeploymentManager se realiza correctamente porque el paquete solicitado no está presente al final de la operación.
    • Esto se debe al principio de implementación principal que no importa el estado anterior del sistema; solo que se logra el estado final deseado.
  • Los métodos PackageManager aceptan permutaciones incoherentes (y a menudo inconvenientes) de expresar un paquete de destino. Por ejemplo, PackageManager admite la eliminación de un paquete por nombre completo del paquete, pero no por el nombre de familia del paquete. PackageDeploymentManager proporciona una API más completa que acepta identificadores adicionales.

Compatibilidad con la plataforma

Estas API solo están disponibles en Windows 10, versión 2004 (10.0; Compilación 19041) y versiones posteriores.

Hay disponible un subconjunto de funcionalidades en versiones más recientes. Por ejemplo, AddPackageOptions.ExpectedDigests requiere Windows 11, versión 22H2 (10.0; Compilación 22621) o posterior. Cualquier funcionalidad que requiera una versión de windows más reciente que windows 10, versión 2004 (10.0; La línea base de compilación 19041) tiene prestaciones para detectar en tiempo de ejecución si la plataforma actual admite la característica, por ejemplo:

var options = new AddPackageOptions();
if (options.IsLimitToExistingPackagesSupported)
{
    options.LimitToExistingPackages = true;
}
RegisterPackageOptions

Especifica las opciones de implementación que puede configurar al usar el método RegisterPackageByUriAsync para registrar un paquete.

RemovePackageOptions

Este espacio de nombres proporciona API de administración de paquetes MSIX comparables a las de la Windows. Management.Deployment espacio de nombres, pero con funcionalidad adicional, experiencia de desarrollador mejorada y optimizaciones de rendimiento.

Estas API de Windows Runtime (WinRT) permiten implementar y administrar software como paquetes MSIX. Puede instalar, actualizar, desinstalar, enumerar y administrar paquetes de otro modo. Estos son los escenarios en los que se centran las API:

  • Almacenar provisionalmente un paquete
  • Registro de un paquete
  • Agregar o actualizar un paquete
  • Quitar un paquete
  • Reparación de un paquete
  • Restablecer un paquete
  • Aprovisionamiento de un paquete
  • Desaprovisionamiento de un paquete

La funcionalidad adicional incluye:

  • IsReadyXxx. Determine si un paquete está listo para su uso.
  • Asegúrese de queReady. Determine si un paquete está listo para su uso y, si no es así, consícelo.
  • IsPackageRegistrationPending. Determine si hay una actualización en espera de registrarse.
  • Conjuntos de paquetes. Operaciones por lotes.
  • PackageRuntimeManager. Operaciones por lotes para su uso en tiempo de ejecución a través de dependencias dinámicas.
  • Facilidad de uso. Mejoras de calidad de vida.

Estructura de API

Los métodos para impulsar la actividad de implementación suelen seguir el patrón:

<verb>Package[Set][By<Type>][Suffix]Async(target, options)

Se admiten los verbos siguientes:

  • Es... Ready[OrNewerAvailable]
  • Asegúrese de... Listo
  • Añadir
  • Stage
  • Register
  • Eliminar
  • Reparación
  • Reset
  • Aprovisionamiento
  • Desaprovisionamiento

Esos métodos aceptan sus paquetes de destino como primer parámetro. Ese parámetro puede ser varios tipos de información, entre los que se incluyen:

  • Filename
  • Camino
  • PackageFamilyName
  • PackageFullName
  • Uri

! [NOTA] Los métodos con un destino de un URI se denominan ... ByUri....

! [NOTA] Los métodos con un destino de PackageFamilyName se denominan ... ByPackageFamilyName....

! [NOTA] Los métodos con un destino de PackageFullName se denominan ... ByPackageFullName....

! [NOTA] Métodos sin ... Por<tipo>... calificador acepta una cadena que puede contener uno o varios tipos de identificadores. Pueden variar para distintos verbos. Consulte la documentación de la API para ver los tipos de destino específicos admitidos por cada método.

Estos métodos aceptan opciones como un tipo coincidente <verb>Package[Set]Options ; por ejemplo, AddPackageAsync(string packageUri, AddPackageOptions options).

En la tabla siguiente se muestran las permutaciones admitidas de verbos y destinos:

Verbo Camino Filename PackageFamilyName PackageFullName archivo: http(s): ms-uup: PackageSet
IsReady X X SO/WAS WAS X X WAS WAS
IsReadyOrNewerAvailable X X SO/WAS WAS X X WAS WAS
EnsureReady X X X X X X WAS WAS
Añadir SO/WAS X X X SO/WAS SO/WAS SO/WAS WAS
Stage SO/WAS X X X SO/WAS SO/WAS SO/WAS WAS
Register WAS SO/WAS SO/WAS SO/WAS SO/WAS X SO/WAS WAS
Eliminar X X WAS SO/WAS X X SO/WAS WAS
Reparación X X WAS WAS X X WAS WAS
Reset X X WAS WAS X X WAS WAS
IsProvisioned X X SO/WAS X X X WAS WAS
Aprovisionamiento X X SO/WAS X X X WAS WAS
Desaprovisionamiento X X SO/WAS X X X WAS WAS

Leyenda:

  • OS = Compatible con las API de Windows (OS) en la clase Windows.Management.Deployment.PackageManager .
  • WAS = Compatible con las API de SDK de Aplicaciones para Windows en la clase Microsoft.Windows.Management.Deployment.PackageDeploymentManager .
  • X = No compatible

Usability

Las API de administración de paquetes del SDK de aplicaciones de Windows (Microsoft.Windows.Management.Deployment) proporcionan varias mejoras de calidad de vida sobre las API de administración de paquetes en Windows.Management.Deployment (por ejemplo, PackageManager). Entre ellas se incluyen las siguientes:

  • Se produce un error en PackageManager.AddPackageByUriAsync, devolviendo ERROR_INSTALL_PACKAGE_DOWNGRADE, si ya está instalada una versión más reciente del paquete. Pero PackageDeploymentManager.AddPackageByUriAsync se realiza correctamente porque trata la solicitud como "instalar este paquete o una versión superior", de la manera en que las dependencias y otras referencias de paquete se controlan de forma rutinaria.
  • Se produce un error en PackageManager.AddPackageByUriAsync, devolviendo ERROR_PACKAGE_ALREADY_EXISTS, si esa versión exacta del paquete ya está instalada. PackageDeploymentManager.AddPackageByUriAsync se realiza correctamente porque el paquete solicitado está instalado.
  • Muchas operaciones packageManager aceptan un paquete de destino como un archivo, pero requieren que se exprese como un URI. PackageDeploymentManager proporciona invalidaciones que también la aceptan como una cadena.
  • PackageManager.RemovePackageByFullNameAsync produce un error si no se encuentra el paquete especificado. PackageDeploymentManager se realiza correctamente porque el paquete solicitado no está presente al final de la operación.
    • Esto se debe al principio de implementación principal que no importa el estado anterior del sistema; solo que se logra el estado final deseado.
  • Los métodos PackageManager aceptan permutaciones incoherentes (y a menudo inconvenientes) de expresar un paquete de destino. Por ejemplo, PackageManager admite la eliminación de un paquete por nombre completo del paquete, pero no por el nombre de familia del paquete. PackageDeploymentManager proporciona una API más completa que acepta identificadores adicionales.

Compatibilidad con la plataforma

Estas API solo están disponibles en Windows 10, versión 2004 (10.0; Compilación 19041) y versiones posteriores.

Hay disponible un subconjunto de funcionalidades en versiones más recientes. Por ejemplo, AddPackageOptions.ExpectedDigests requiere Windows 11, versión 22H2 (10.0; Compilación 22621) o posterior. Cualquier funcionalidad que requiera una versión de windows más reciente que windows 10, versión 2004 (10.0; La línea base de compilación 19041) tiene prestaciones para detectar en tiempo de ejecución si la plataforma actual admite la característica, por ejemplo:

var options = new AddPackageOptions();
if (options.IsLimitToExistingPackagesSupported)
{
    options.LimitToExistingPackages = true;
}
StagePackageOptions

Especifica las opciones de implementación que puede configurar al usar el método StagePackageByUriAsync para almacenar provisionalmente un paquete.

Estructuras

Nombre Description
PackageDeploymentProgress

Contiene información de progreso para la solicitud de implementación.

Interfaces

Nombre Description
IPackageValidator

Este espacio de nombres proporciona API de administración de paquetes MSIX comparables a las de la Windows. Management.Deployment espacio de nombres, pero con funcionalidad adicional, experiencia de desarrollador mejorada y optimizaciones de rendimiento.

Estas API de Windows Runtime (WinRT) permiten implementar y administrar software como paquetes MSIX. Puede instalar, actualizar, desinstalar, enumerar y administrar paquetes de otro modo. Estos son los escenarios en los que se centran las API:

  • Almacenar provisionalmente un paquete
  • Registro de un paquete
  • Agregar o actualizar un paquete
  • Quitar un paquete
  • Reparación de un paquete
  • Restablecer un paquete
  • Aprovisionamiento de un paquete
  • Desaprovisionamiento de un paquete

La funcionalidad adicional incluye:

  • IsReadyXxx. Determine si un paquete está listo para su uso.
  • Asegúrese de queReady. Determine si un paquete está listo para su uso y, si no es así, consícelo.
  • IsPackageRegistrationPending. Determine si hay una actualización en espera de registrarse.
  • Conjuntos de paquetes. Operaciones por lotes.
  • PackageRuntimeManager. Operaciones por lotes para su uso en tiempo de ejecución a través de dependencias dinámicas.
  • Facilidad de uso. Mejoras de calidad de vida.

Estructura de API

Los métodos para impulsar la actividad de implementación suelen seguir el patrón:

<verb>Package[Set][By<Type>][Suffix]Async(target, options)

Se admiten los verbos siguientes:

  • Es... Ready[OrNewerAvailable]
  • Asegúrese de... Listo
  • Añadir
  • Stage
  • Register
  • Eliminar
  • Reparación
  • Reset
  • Aprovisionamiento
  • Desaprovisionamiento

Esos métodos aceptan sus paquetes de destino como primer parámetro. Ese parámetro puede ser varios tipos de información, entre los que se incluyen:

  • Filename
  • Camino
  • PackageFamilyName
  • PackageFullName
  • Uri

! [NOTA] Los métodos con un destino de un URI se denominan ... ByUri....

! [NOTA] Los métodos con un destino de PackageFamilyName se denominan ... ByPackageFamilyName....

! [NOTA] Los métodos con un destino de PackageFullName se denominan ... ByPackageFullName....

! [NOTA] Métodos sin ... Por<tipo>... calificador acepta una cadena que puede contener uno o varios tipos de identificadores. Pueden variar para distintos verbos. Consulte la documentación de la API para ver los tipos de destino específicos admitidos por cada método.

Estos métodos aceptan opciones como un tipo coincidente <verb>Package[Set]Options ; por ejemplo, AddPackageAsync(string packageUri, AddPackageOptions options).

En la tabla siguiente se muestran las permutaciones admitidas de verbos y destinos:

Verbo Camino Filename PackageFamilyName PackageFullName archivo: http(s): ms-uup: PackageSet
IsReady X X SO/WAS WAS X X WAS WAS
IsReadyOrNewerAvailable X X SO/WAS WAS X X WAS WAS
EnsureReady X X X X X X WAS WAS
Añadir SO/WAS X X X SO/WAS SO/WAS SO/WAS WAS
Stage SO/WAS X X X SO/WAS SO/WAS SO/WAS WAS
Register WAS SO/WAS SO/WAS SO/WAS SO/WAS X SO/WAS WAS
Eliminar X X WAS SO/WAS X X SO/WAS WAS
Reparación X X WAS WAS X X WAS WAS
Reset X X WAS WAS X X WAS WAS
IsProvisioned X X SO/WAS X X X WAS WAS
Aprovisionamiento X X SO/WAS X X X WAS WAS
Desaprovisionamiento X X SO/WAS X X X WAS WAS

Leyenda:

  • OS = Compatible con las API de Windows (OS) en la clase Windows.Management.Deployment.PackageManager .
  • WAS = Compatible con las API de SDK de Aplicaciones para Windows en la clase Microsoft.Windows.Management.Deployment.PackageDeploymentManager .
  • X = No compatible

Usability

Las API de administración de paquetes del SDK de aplicaciones de Windows (Microsoft.Windows.Management.Deployment) proporcionan varias mejoras de calidad de vida sobre las API de administración de paquetes en Windows.Management.Deployment (por ejemplo, PackageManager). Entre ellas se incluyen las siguientes:

  • Se produce un error en PackageManager.AddPackageByUriAsync, devolviendo ERROR_INSTALL_PACKAGE_DOWNGRADE, si ya está instalada una versión más reciente del paquete. Pero PackageDeploymentManager.AddPackageByUriAsync se realiza correctamente porque trata la solicitud como "instalar este paquete o una versión superior", de la manera en que las dependencias y otras referencias de paquete se controlan de forma rutinaria.
  • Se produce un error en PackageManager.AddPackageByUriAsync, devolviendo ERROR_PACKAGE_ALREADY_EXISTS, si esa versión exacta del paquete ya está instalada. PackageDeploymentManager.AddPackageByUriAsync se realiza correctamente porque el paquete solicitado está instalado.
  • Muchas operaciones packageManager aceptan un paquete de destino como un archivo, pero requieren que se exprese como un URI. PackageDeploymentManager proporciona invalidaciones que también la aceptan como una cadena.
  • PackageManager.RemovePackageByFullNameAsync produce un error si no se encuentra el paquete especificado. PackageDeploymentManager se realiza correctamente porque el paquete solicitado no está presente al final de la operación.
    • Esto se debe al principio de implementación principal que no importa el estado anterior del sistema; solo que se logra el estado final deseado.
  • Los métodos PackageManager aceptan permutaciones incoherentes (y a menudo inconvenientes) de expresar un paquete de destino. Por ejemplo, PackageManager admite la eliminación de un paquete por nombre completo del paquete, pero no por el nombre de familia del paquete. PackageDeploymentManager proporciona una API más completa que acepta identificadores adicionales.

Compatibilidad con la plataforma

Estas API solo están disponibles en Windows 10, versión 2004 (10.0; Compilación 19041) y versiones posteriores.

Hay disponible un subconjunto de funcionalidades en versiones más recientes. Por ejemplo, AddPackageOptions.ExpectedDigests requiere Windows 11, versión 22H2 (10.0; Compilación 22621) o posterior. Cualquier funcionalidad que requiera una versión de windows más reciente que windows 10, versión 2004 (10.0; La línea base de compilación 19041) tiene prestaciones para detectar en tiempo de ejecución si la plataforma actual admite la característica, por ejemplo:

var options = new AddPackageOptions();
if (options.IsLimitToExistingPackagesSupported)
{
    options.LimitToExistingPackages = true;
}

Enumeraciones

Nombre Description
PackageDeploymentFeature

Este espacio de nombres proporciona API de administración de paquetes MSIX comparables a las de la Windows. Management.Deployment espacio de nombres, pero con funcionalidad adicional, experiencia de desarrollador mejorada y optimizaciones de rendimiento.

Estas API de Windows Runtime (WinRT) permiten implementar y administrar software como paquetes MSIX. Puede instalar, actualizar, desinstalar, enumerar y administrar paquetes de otro modo. Estos son los escenarios en los que se centran las API:

  • Almacenar provisionalmente un paquete
  • Registro de un paquete
  • Agregar o actualizar un paquete
  • Quitar un paquete
  • Reparación de un paquete
  • Restablecer un paquete
  • Aprovisionamiento de un paquete
  • Desaprovisionamiento de un paquete

La funcionalidad adicional incluye:

  • IsReadyXxx. Determine si un paquete está listo para su uso.
  • Asegúrese de queReady. Determine si un paquete está listo para su uso y, si no es así, consícelo.
  • IsPackageRegistrationPending. Determine si hay una actualización en espera de registrarse.
  • Conjuntos de paquetes. Operaciones por lotes.
  • PackageRuntimeManager. Operaciones por lotes para su uso en tiempo de ejecución a través de dependencias dinámicas.
  • Facilidad de uso. Mejoras de calidad de vida.

Estructura de API

Los métodos para impulsar la actividad de implementación suelen seguir el patrón:

<verb>Package[Set][By<Type>][Suffix]Async(target, options)

Se admiten los verbos siguientes:

  • Es... Ready[OrNewerAvailable]
  • Asegúrese de... Listo
  • Añadir
  • Stage
  • Register
  • Eliminar
  • Reparación
  • Reset
  • Aprovisionamiento
  • Desaprovisionamiento

Esos métodos aceptan sus paquetes de destino como primer parámetro. Ese parámetro puede ser varios tipos de información, entre los que se incluyen:

  • Filename
  • Camino
  • PackageFamilyName
  • PackageFullName
  • Uri

! [NOTA] Los métodos con un destino de un URI se denominan ... ByUri....

! [NOTA] Los métodos con un destino de PackageFamilyName se denominan ... ByPackageFamilyName....

! [NOTA] Los métodos con un destino de PackageFullName se denominan ... ByPackageFullName....

! [NOTA] Métodos sin ... Por<tipo>... calificador acepta una cadena que puede contener uno o varios tipos de identificadores. Pueden variar para distintos verbos. Consulte la documentación de la API para ver los tipos de destino específicos admitidos por cada método.

Estos métodos aceptan opciones como un tipo coincidente <verb>Package[Set]Options ; por ejemplo, AddPackageAsync(string packageUri, AddPackageOptions options).

En la tabla siguiente se muestran las permutaciones admitidas de verbos y destinos:

Verbo Camino Filename PackageFamilyName PackageFullName archivo: http(s): ms-uup: PackageSet
IsReady X X SO/WAS WAS X X WAS WAS
IsReadyOrNewerAvailable X X SO/WAS WAS X X WAS WAS
EnsureReady X X X X X X WAS WAS
Añadir SO/WAS X X X SO/WAS SO/WAS SO/WAS WAS
Stage SO/WAS X X X SO/WAS SO/WAS SO/WAS WAS
Register WAS SO/WAS SO/WAS SO/WAS SO/WAS X SO/WAS WAS
Eliminar X X WAS SO/WAS X X SO/WAS WAS
Reparación X X WAS WAS X X WAS WAS
Reset X X WAS WAS X X WAS WAS
IsProvisioned X X SO/WAS X X X WAS WAS
Aprovisionamiento X X SO/WAS X X X WAS WAS
Desaprovisionamiento X X SO/WAS X X X WAS WAS

Leyenda:

  • OS = Compatible con las API de Windows (OS) en la clase Windows.Management.Deployment.PackageManager .
  • WAS = Compatible con las API de SDK de Aplicaciones para Windows en la clase Microsoft.Windows.Management.Deployment.PackageDeploymentManager .
  • X = No compatible

Usability

Las API de administración de paquetes del SDK de aplicaciones de Windows (Microsoft.Windows.Management.Deployment) proporcionan varias mejoras de calidad de vida sobre las API de administración de paquetes en Windows.Management.Deployment (por ejemplo, PackageManager). Entre ellas se incluyen las siguientes:

  • Se produce un error en PackageManager.AddPackageByUriAsync, devolviendo ERROR_INSTALL_PACKAGE_DOWNGRADE, si ya está instalada una versión más reciente del paquete. Pero PackageDeploymentManager.AddPackageByUriAsync se realiza correctamente porque trata la solicitud como "instalar este paquete o una versión superior", de la manera en que las dependencias y otras referencias de paquete se controlan de forma rutinaria.
  • Se produce un error en PackageManager.AddPackageByUriAsync, devolviendo ERROR_PACKAGE_ALREADY_EXISTS, si esa versión exacta del paquete ya está instalada. PackageDeploymentManager.AddPackageByUriAsync se realiza correctamente porque el paquete solicitado está instalado.
  • Muchas operaciones packageManager aceptan un paquete de destino como un archivo, pero requieren que se exprese como un URI. PackageDeploymentManager proporciona invalidaciones que también la aceptan como una cadena.
  • PackageManager.RemovePackageByFullNameAsync produce un error si no se encuentra el paquete especificado. PackageDeploymentManager se realiza correctamente porque el paquete solicitado no está presente al final de la operación.
    • Esto se debe al principio de implementación principal que no importa el estado anterior del sistema; solo que se logra el estado final deseado.
  • Los métodos PackageManager aceptan permutaciones incoherentes (y a menudo inconvenientes) de expresar un paquete de destino. Por ejemplo, PackageManager admite la eliminación de un paquete por nombre completo del paquete, pero no por el nombre de familia del paquete. PackageDeploymentManager proporciona una API más completa que acepta identificadores adicionales.

Compatibilidad con la plataforma

Estas API solo están disponibles en Windows 10, versión 2004 (10.0; Compilación 19041) y versiones posteriores.

Hay disponible un subconjunto de funcionalidades en versiones más recientes. Por ejemplo, AddPackageOptions.ExpectedDigests requiere Windows 11, versión 22H2 (10.0; Compilación 22621) o posterior. Cualquier funcionalidad que requiera una versión de windows más reciente que windows 10, versión 2004 (10.0; La línea base de compilación 19041) tiene prestaciones para detectar en tiempo de ejecución si la plataforma actual admite la característica, por ejemplo:

var options = new AddPackageOptions();
if (options.IsLimitToExistingPackagesSupported)
{
    options.LimitToExistingPackages = true;
}
PackageDeploymentProgressStatus

Define constantes que especifican el estado de progreso de la solicitud de implementación.

PackageDeploymentStatus

Estado de la solicitud de implementación.

PackageReadyOrNewerAvailableStatus

Define el comportamiento del código auxiliar de un paquete de aplicación que se va a agregar o almacenar provisionalmente.

PackageVolumeFeature

Este espacio de nombres proporciona API de administración de paquetes MSIX comparables a las de la Windows. Management.Deployment espacio de nombres, pero con funcionalidad adicional, experiencia de desarrollador mejorada y optimizaciones de rendimiento.

Estas API de Windows Runtime (WinRT) permiten implementar y administrar software como paquetes MSIX. Puede instalar, actualizar, desinstalar, enumerar y administrar paquetes de otro modo. Estos son los escenarios en los que se centran las API:

  • Almacenar provisionalmente un paquete
  • Registro de un paquete
  • Agregar o actualizar un paquete
  • Quitar un paquete
  • Reparación de un paquete
  • Restablecer un paquete
  • Aprovisionamiento de un paquete
  • Desaprovisionamiento de un paquete

La funcionalidad adicional incluye:

  • IsReadyXxx. Determine si un paquete está listo para su uso.
  • Asegúrese de queReady. Determine si un paquete está listo para su uso y, si no es así, consícelo.
  • IsPackageRegistrationPending. Determine si hay una actualización en espera de registrarse.
  • Conjuntos de paquetes. Operaciones por lotes.
  • PackageRuntimeManager. Operaciones por lotes para su uso en tiempo de ejecución a través de dependencias dinámicas.
  • Facilidad de uso. Mejoras de calidad de vida.

Estructura de API

Los métodos para impulsar la actividad de implementación suelen seguir el patrón:

<verb>Package[Set][By<Type>][Suffix]Async(target, options)

Se admiten los verbos siguientes:

  • Es... Ready[OrNewerAvailable]
  • Asegúrese de... Listo
  • Añadir
  • Stage
  • Register
  • Eliminar
  • Reparación
  • Reset
  • Aprovisionamiento
  • Desaprovisionamiento

Esos métodos aceptan sus paquetes de destino como primer parámetro. Ese parámetro puede ser varios tipos de información, entre los que se incluyen:

  • Filename
  • Camino
  • PackageFamilyName
  • PackageFullName
  • Uri

! [NOTA] Los métodos con un destino de un URI se denominan ... ByUri....

! [NOTA] Los métodos con un destino de PackageFamilyName se denominan ... ByPackageFamilyName....

! [NOTA] Los métodos con un destino de PackageFullName se denominan ... ByPackageFullName....

! [NOTA] Métodos sin ... Por<tipo>... calificador acepta una cadena que puede contener uno o varios tipos de identificadores. Pueden variar para distintos verbos. Consulte la documentación de la API para ver los tipos de destino específicos admitidos por cada método.

Estos métodos aceptan opciones como un tipo coincidente <verb>Package[Set]Options ; por ejemplo, AddPackageAsync(string packageUri, AddPackageOptions options).

En la tabla siguiente se muestran las permutaciones admitidas de verbos y destinos:

Verbo Camino Filename PackageFamilyName PackageFullName archivo: http(s): ms-uup: PackageSet
IsReady X X SO/WAS WAS X X WAS WAS
IsReadyOrNewerAvailable X X SO/WAS WAS X X WAS WAS
EnsureReady X X X X X X WAS WAS
Añadir SO/WAS X X X SO/WAS SO/WAS SO/WAS WAS
Stage SO/WAS X X X SO/WAS SO/WAS SO/WAS WAS
Register WAS SO/WAS SO/WAS SO/WAS SO/WAS X SO/WAS WAS
Eliminar X X WAS SO/WAS X X SO/WAS WAS
Reparación X X WAS WAS X X WAS WAS
Reset X X WAS WAS X X WAS WAS
IsProvisioned X X SO/WAS X X X WAS WAS
Aprovisionamiento X X SO/WAS X X X WAS WAS
Desaprovisionamiento X X SO/WAS X X X WAS WAS

Leyenda:

  • OS = Compatible con las API de Windows (OS) en la clase Windows.Management.Deployment.PackageManager .
  • WAS = Compatible con las API de SDK de Aplicaciones para Windows en la clase Microsoft.Windows.Management.Deployment.PackageDeploymentManager .
  • X = No compatible

Usability

Las API de administración de paquetes del SDK de aplicaciones de Windows (Microsoft.Windows.Management.Deployment) proporcionan varias mejoras de calidad de vida sobre las API de administración de paquetes en Windows.Management.Deployment (por ejemplo, PackageManager). Entre ellas se incluyen las siguientes:

  • Se produce un error en PackageManager.AddPackageByUriAsync, devolviendo ERROR_INSTALL_PACKAGE_DOWNGRADE, si ya está instalada una versión más reciente del paquete. Pero PackageDeploymentManager.AddPackageByUriAsync se realiza correctamente porque trata la solicitud como "instalar este paquete o una versión superior", de la manera en que las dependencias y otras referencias de paquete se controlan de forma rutinaria.
  • Se produce un error en PackageManager.AddPackageByUriAsync, devolviendo ERROR_PACKAGE_ALREADY_EXISTS, si esa versión exacta del paquete ya está instalada. PackageDeploymentManager.AddPackageByUriAsync se realiza correctamente porque el paquete solicitado está instalado.
  • Muchas operaciones packageManager aceptan un paquete de destino como un archivo, pero requieren que se exprese como un URI. PackageDeploymentManager proporciona invalidaciones que también la aceptan como una cadena.
  • PackageManager.RemovePackageByFullNameAsync produce un error si no se encuentra el paquete especificado. PackageDeploymentManager se realiza correctamente porque el paquete solicitado no está presente al final de la operación.
    • Esto se debe al principio de implementación principal que no importa el estado anterior del sistema; solo que se logra el estado final deseado.
  • Los métodos PackageManager aceptan permutaciones incoherentes (y a menudo inconvenientes) de expresar un paquete de destino. Por ejemplo, PackageManager admite la eliminación de un paquete por nombre completo del paquete, pero no por el nombre de familia del paquete. PackageDeploymentManager proporciona una API más completa que acepta identificadores adicionales.

Compatibilidad con la plataforma

Estas API solo están disponibles en Windows 10, versión 2004 (10.0; Compilación 19041) y versiones posteriores.

Hay disponible un subconjunto de funcionalidades en versiones más recientes. Por ejemplo, AddPackageOptions.ExpectedDigests requiere Windows 11, versión 22H2 (10.0; Compilación 22621) o posterior. Cualquier funcionalidad que requiera una versión de windows más reciente que windows 10, versión 2004 (10.0; La línea base de compilación 19041) tiene prestaciones para detectar en tiempo de ejecución si la plataforma actual admite la característica, por ejemplo:

var options = new AddPackageOptions();
if (options.IsLimitToExistingPackagesSupported)
{
    options.LimitToExistingPackages = true;
}
StubPackageOption

Define constantes que especifican el comportamiento de código auxiliar de un paquete de aplicación que se va a agregar o almacenar provisionalmente.