Método IUpdateServiceManager2::AddService2 (wuapi.h)
Registra un servicio con Windows Update Agent (WUA) sin necesidad de un archivo de gabinete de autorización (.cab). Este método también devuelve un puntero a una interfaz IUpdateServiceRegistration .
Sintaxis
HRESULT AddService2(
[in] BSTR serviceID,
[in] LONG flags,
[in] BSTR authorizationCabPath,
[out] IUpdateServiceRegistration **retval
);
Parámetros
[in] serviceID
Identificador del servicio que se va a registrar.
[in] flags
Combinación de valores AddServiceFlag que se combinan mediante una operación OR bit a bit. El valor resultante especifica opciones para el registro del servicio. Para obtener más información, consulta Comentarios.
[in] authorizationCabPath
Ruta de acceso del archivo de gabinete local firmado por Microsoft (.cab) que tiene la información necesaria para un registro de servicio. Si está vacío, el agente de actualización busca el archivo de gabinete de autorización (.cab) durante el registro del servicio cuando hay disponible una conexión de red.
[out] retval
Puntero a una interfaz IUpdateServiceRegistration que representa un servicio agregado.
Valor devuelto
Devuelve S_OK si se ejecuta correctamente. De lo contrario, devuelve un código de error COM o Windows.
Este método también puede devolver los siguientes códigos de error.
Código devuelto | Descripción |
---|---|
|
Un valor de parámetro no es válido. |
|
No se puede llamar a este método desde un equipo remoto si el parámetro authorizationCabPath está establecido en una cadena nula. |
|
El archivo de gabinete de autorización (.cab) ha expirado. |
|
No se pudo cambiar el estado de La Novedades automática. |
Comentarios
Este método puede devolver códigos de error de red cuando se especifica la marca asfAllowOnlineRegistration .
El parámetro authorizationCabPath es opcional para este método. Si no se especifica el parámetro authorizationCabPath, se recuperará del servidor de Windows Update.
Este método devuelve E_INVALIDARG si se especifican las marcas asfAllowOnlineRegistration o asfAllowPendingRegistration y si el valor del parámetro authorizationCabPath no es una cadena vacía.
Este método devuelve WU_E_DS_INVALIDOPERATION si el cambio solicitado en el estado de Automatic Novedades es contrario a las especificaciones del archivo de gabinete de autorización (.cab) cuando se especifica la marca asfRegisterServiceWithAU. La función WinVerifyTrust devuelve un error si no se ha firmado el archivo del gabinete de autorización.
El agente de actualización y AddService2 se comportan de las siguientes maneras en función de los valores AddServiceFlag que especifique en el parámetro flags :
- Si especifica asfAllowOnlineRegistration sin asfAllowPendingRegistration, el agente de actualización intenta conectarse inmediatamente para registrar el servicio. AddService2 devuelve un valor HRESULT que refleja el éxito o error del registro. Si se produce un error en el registro, el agente de actualización no realiza ningún intento futuro de registrar el servicio.
- Si especifica asfAllowPendingRegistration sin asfAllowOnlineRegistration, el agente de actualización no registra el servicio inmediatamente. AddService2 devuelve S_OK para indicar que el agente de actualización intentará registrar el servicio más adelante, lo que no garantiza que el registro se realice correctamente.
- Si especifica asfAllowPendingRegistration y asfAllowOnlineRegistration juntos, el agente de actualización intenta conectarse inmediatamente para registrar el servicio. AddService2 devuelve S_OK si el registro se realiza correctamente. AddService2 devuelve un valor HRESULT de error si se produce un error en el registro, pero el agente de actualización sigue intentando registrar el servicio más adelante.
- Si especifica asfAllowPendingRegistration, asfAllowOnlineRegistration o ambos, especifique también NULL para el parámetro authorizationCabPath .
- Si no especifica asfAllowPendingRegistration ni asfAllowOnlineRegistration (es decir, si las marcas son cero o asfRegisterServiceWithAU), debe especificar una ruta que no sea NULL en el parámetro authorizationCabPath . En este modo, AddService2 procesa el archivo de gabinete (.cab) y registra el servicio de la misma manera que IUpdateServiceManager::AddService.
- Si especifica asfRegisterServiceWithAU, el cambio al servicio automático predeterminado de Novedades no se produce (y no se refleja en la interfaz de usuario de Windows Update) hasta que el registro del servicio se realice correctamente. Esto significa que si el registro se realiza correctamente inmediatamente (porque especificó asfAllowPendingRegistration o proporcionó un archivo de gabinete (.cab)), el cambio automático del servicio de Novedades también se produce inmediatamente. Si el registro no se realiza correctamente hasta más adelante (porque especificó asfAllowPendingRegistration), el cambio automático del servicio Novedades no se produce a menos que el registro de servicio pendiente se realice correctamente.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows XP, Windows 2000 Professional con SP3 [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2003, Windows 2000 Server con SP3 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | wuapi.h |
Library | Wuguid.lib |
Archivo DLL | Wuapi.dll |