Compartir a través de


Función DismAddPackage

Agrega un único archivo .cab o .msu a una imagen de Windows.

Sintaxis

HRESULT WINAPI DismAddPackage(
  _In_     DismSession            Session,
  _In_     PCWSTR                 PackagePath,
  _In_     BOOL                   IgnoreCheck,
  _In_     BOOL                   PreventPending,
  _In_opt_ HANDLE                 CancelEvent,
  _In_opt_ DISM_PROGRESS_CALLBACK Progress,
  _In_opt_ PVOID                  UserData
);

Parámetros

Session [in]
Una DismSession válida. DismSession debe estar asociado a una imagen. Puede asociar una sesión a una imagen mediante el DismOpenSession.

PackagePath [in]
Ruta de acceso relativa o absoluta al archivo .cab o .msu que se va a agregar, o una carpeta que contiene los archivos expandidos de un solo archivo .cab.

IgnoreCheck [in]
Valor booleano para especificar si se omiten las comprobaciones de aplicabilidad internas que se realizan cuando se agrega un paquete.

Valor Descripción
TRUE Omita las comprobaciones de aplicabilidad internas.
FALSE No omita las comprobaciones de aplicabilidad internas.

PreventPending [in]
Un valor booleano para especificar si agregar un paquete si tiene acciones en línea pendientes.

Valor Descripción
TRUE Evite la instalación de un paquete que tenga acciones en línea pendientes.
FALSE Permita la instalación de un paquete que tenga acciones en línea pendientes.

CancelEvent [in, optional]
Opcional. Puede establecer un CancelEvent para esta función con el fin de cancelar la operación en curso cuando el cliente lo indique. Si el CancelEvent se recibe en una fase en la que no se puede cancelar la operación, la operación continuará y devolverá un código correcto. Si se recibe el CancelEvent y se cancela la operación, se desconoce el estado de la imagen. Debe comprobar el estado de la imagen antes de continuar o descartar los cambios e iniciar de nuevo.

Progress [in, optional]
Opcional. Puntero a una DismProgressCallback definida por el cliente.

UserData [in, optional]
Opcional. Datos personalizados definidos por el usuario.

Valor devuelto

Si la función se ejecuta correctamente, el valor devuelto es S_OK. La función también puede devolver uno de los siguientes valores cuando se realiza correctamente:

Código de retorno Descripción
(HRESULT)ERROR_SUCCESS_REBOOT_REQUIRED
Si la Sesión está online, es necesario reiniciar el equipo.
DISMAPI_S_RELOAD_IMAGE_SESSION_REQUIRED
La Sesión debe volver a cargarse.

Si se produce un error en la función, el valor devuelto es un valor de error HRESULT.

Observaciones

Solo se pueden agregar archivos .cab a una imagen en línea. Los archivos .cab o .msu se pueden agregar a una imagen sin conexión.

Esta función devolverá un código de error especial si el paquete no es aplicable. Puede usar el comando DismGetPackageInfo con para determinar si un paquete es aplicable a la imagen de destino.

Ejemplo

HRESULT hr = S_OK;
hr = DismAddPackage(Session, "C:\\packages\\calc.cab", FALSE, FALSE, NULL, NULL, NULL);

Requisitos

Requisito Descripción
Plataformas anfitrión compatibles La API DISM se puede usar en cualquier sistema operativo compatible con Windows Assessment and Deployment Kit (Windows ADK). Para obtener más información, consulte la referencia técnica de Windows ADK.
Plataformas de imágenes compatibles Windows 7, Windows Server 2008 R2, Windows PE 3.0, Windows 8, Windows Server 2012, Windows Preinstallation Environment (Windows PE) 4.0, Windows 8.1, Windows Server 2012 R2, Windows 10, Windows Server 2016
Cliente mínimo admitido Windows 7 [solo aplicaciones de escritorio]
Servidor mínimo admitido Windows Server 2008 R2 [solo aplicaciones de escritorio]
Encabezado DismAPI.h
Biblioteca DismAPI.lib
DLL DismAPI.dll

Consulte también

DismAddDriver

DismEnableFeature

DismGetPackages

DismGetPackageInfo

DismRemovePackage

DismPackage

DismPackageInfo

DismPackageFeatureState