Actualización del agente de Windows Update
Windows Update Agente (WUA) se actualiza a través de varios medios, en función de la versión de Windows que se ejecuta en el dispositivo. Es posible que las versiones anteriores de WUA no puedan conectarse a los servicios de actualización actuales, es posible que no sean compatibles con todas las actualizaciones y que no admitan todas las API documentadas. Aquí se muestra cómo asegurarse de que WUA está totalmente actualizado y compatible.
En versiones de Windows a partir de Windows 7 y Windows Server 2008 R2
las actualizaciones de Windows Update Agent (WUA) se incluyen en las actualizaciones periódicas periódicas de Windows distribuidas a través de Windows Update o a Windows Server Update Services (WSUS). No es necesario realizar ningún paso especial para actualizar WUA en estas versiones de Windows.
En versiones de Windows anteriores a Windows 7 y Windows Server 2008 R2
WUA se actualiza automáticamente cuando la Novedades automática se conecta a Windows Update o a WSUS.
Si la Novedades automática aún no se ha ejecutado correctamente, es posible que un dispositivo que ejecute estas versiones de Windows ejecute una versión anterior de WUA que no admita todas las API documentadas. Si recibe un resultado de WU_E_SELFUPDATE_REQUIRED cuando usa la API de WUA para realizar un examen, descargar o instalar, este error indica que la versión instalada de WUA es demasiado antigua para conectarse a los servicios de Windows Update actuales. No puede usar las API de WUA normales para actualizar WUA en estos sistemas operativos.
Un usuario puede actualizar manualmente WUA a una versión actual abriendo el panel de control Windows Update, seleccionando Buscar Novedades y aceptando la actualización automática que aparece. Como alternativa, puede actualizar WUA mediante programación.
Para actualizar WUA mediante programación en versiones de Windows anteriores a Windows 7 y Windows Server 2008 R2
- Use las API de WinHTTP para descargar Wuredist.cab.
- Use las funciones de criptografía para comprobar que la copia descargada de Wuredist.cab tiene una firma digital de Microsoft. Si no puede comprobar la firma digital, detenga.
- Use las API de interfaz de descompresión de archivos para extraer el archivo XML de Wuredist.cab.
- Use las API de Microsoft XML Core Services (MSXML) para cargar el archivo XML y buscar el nodo WURedist/StandaloneRedist/architecture para la arquitectura del equipo. Por ejemplo, para x86, busque el nodo WURedist/StandaloneRedist/architecture con el atributo name de x86.
- Llame a IWindowsUpdateAgentInfo::GetInfo para determinar la versión actual de WUA. Si IWindowsUpdateAgentInfo::GetInfo devuelve un número de versión que es al menos tan alto como el atributo clientVersion en el nodo de arquitectura que encuentra, detenga.
- Use las API de MSXML para leer el atributo downloadUrl del nodo de arquitectura que ha localizado. downloadUrl le proporciona la dirección URL de descarga del instalador de WUA adecuado para la arquitectura del equipo.
- Use las API de WinHTTP para descargar el instalador adecuado.
- Use la función CreateProcess o una API similar para ejecutar el instalador descargado.