Skip to main content

XPackageRegisterInstallationProgressChanged

Registra una devolución de llamada a la que se llamará cuando cambie el progreso de la instalación.

Sintaxis

Parámetros

installationMonitor   _In_
Tipo: XPackageInstallationMonitorHandle
Un identificador del monitor de instalación con el que se va a registrar la devolución de llamada. context   _In_opt_
Tipo: void*
Contexto que se pasará a la devolución de llamada. callback   _In_
Tipo: XPackageInstallationProgressCallback*
Devolución de llamada definida por el usuario a la que se llamará cuando cambie el progreso de la instalación. token   _Out_
Tipo: XTaskQueueRegistrationToken*
Un token que identifica la devolución de llamada y que se puede usar para anular su registro más adelante, mediante XPackageUnregisterInstallationProgressChanged.

Valor devuelto

Tipo: HRESULT HRESULT de éxito o código de error.

Comentarios

Un juego ha implementado un marcador de inicio, de modo que se pueda ejecutar antes de que esté instalado por completo. El juego necesitará saber qué partes están instaladas y cuáles no. En este ejemplo, el juego necesita saber cuándo se instalan los fragmentos asociados a una pista de carreras con el nombre de pista especificado: 
Repasemos cada llamada de API del código mostrado anteriormente:
Todo el contenido instalado tendrá un identificador único. Puede supervisar la instalación de cualquier paquete si conoce el identificador del paquete y tiene acceso a ese contenido. Un proceso en ejecución puede obtener su propio identificador de paquete. Para obtener más información sobre los identificadores de paquete, consulte Administración y concesión de licencias de contenido descargable (DLC).
Esto crea un monitor que realiza un seguimiento del estado de la instalación. Este monitor de instalación se actualiza a sí mismo con una cadencia regular. Para obtener el progreso actual de una instalación, llame a XPackageGetInstallationProgress; para recibir notificaciones de un cambio durante una instalación, registre una devolución de llamada. Puede crear el monitor de instalación para todo el paquete o para un subconjunto determinado. Aquí, ha definido un “selector” que indica que quiere conocer el progreso de la instalación para un nombre de pista. Puede especificar una frecuencia (en este caso, 1000 ms) que indica con qué frecuencia el monitor de instalación actualizará su instantánea del progreso, como máximo a esa velocidad. Si no se ha producido progreso a tiempo, podría ser más lenta.
Quiere saber cuándo ha terminado de cargarse la pista, por lo que registra un evento de cambio de progreso en el monitor. Esta devolución de llamada se invocará a través de la cola de tareas que se proporcionó cuando se creó el monitor, aproximadamente con la cadencia especificada en XPackageCreateInstallationMonitor. Dentro de la devolución de llamada, puede representar el progreso dentro del juego o notificar al juego que una pista está lista. En este ejemplo, cierra el monitor de instalación pero no anula el registro de la notificación. La duración de una notificación del monitor de instalación está vinculada al monitor de instalación; por lo tanto, cerrar el monitor anula el registro de todas sus notificaciones.

Requisitos

Encabezado: XPackage.h Biblioteca: xgameruntime.lib Plataformas compatibles: Windows, consolas de la familia XBOX One y consolas XBOX Series

Documentación conceptual

Consulte también

XPackage
Instalación por streaming y entrega inteligente
XPackageGetInstallationProgress
XPackageCreateInstallationMonitor
Última modificación el 28 de agosto de 2026