Error 1060 Application Popup al iniciar Windows 11 por WsResetDevice.sys en UpperFilters: causa y solución definitiva

¿Ves “Application Popup” al iniciar Windows y un aviso que cita \SystemRoot\SysWow64\DRIVERS\WsResetDevice.sys? En esta guía te explico por qué ocurre, cómo confirmarlo y el procedimiento seguro, probado y reversible para eliminar la referencia errónea en el Registro y así detener el evento recurrente en el Visor de eventos.

Índice

Contexto y síntoma

En algunos equipos, cada inicio registra repetidamente el evento “Application Popup” con identificador de evento de error asociado y un texto similar a:

\SystemRoot\SysWow64\DRIVERS\WsResetDevice.sys

A pesar de que el sistema pasa SFC y DISM sin errores, no muestra triángulos amarillos en el Administrador de dispositivos y está totalmente actualizado, el registro del evento persiste durante semanas. En un perfil local nuevo no se reproduce, lo que confunde porque sugiere problema de usuario; sin embargo, el origen real suele residir en una clave de máquina, no de perfil.

Qué es realmente ese aviso

El mensaje indica que Windows intentó cargar un componente en la pila de controladores y no lo encontró o no pudo inicializarlo. La ruta en el mensaje (SysWow64\DRIVERS) es atípica para controladores de kernel, lo que refuerza la hipótesis de que se trata de una referencia de controlador de filtro mal registrada o huérfana.

La pista que lo aclara

Al abrir el Editor del Registro y navegar a la clase de dispositivos USB se encuentra esta clave:

HKEYLOCALMACHINE\SYSTEM\CurrentControlSet\Control\Class\{36fc9e60-c465-11cf-8056-444553540000}

Dentro aparece el valor UpperFilters con un único elemento: WsResetDevice.sys o WsResetDevice. Esa combinación es sospechosa porque:

  • WSReset.exe es una utilidad legítima que reinicia Microsoft Store y no instala controladores de kernel.
  • Un valor UpperFilters en la clase USB obliga a cargar el filtro al preparar el subsistema, lo que ocurre al inicio.
  • Si el archivo no existe o no es un controlador válido, Windows registra el aviso y lo intentará en cada arranque.

Conclusión técnica

La causa más probable es una entrada de UpperFilters huérfana o incompatible en la clase de controladores USB. Esa entrada apunta a un archivo inexistente o inválido denominado WsResetDevice.sys. Al no poder cargarlo, el sistema genera el “Application Popup” al inicio. Eliminar la referencia errónea detiene el comportamiento.

Solución confirmada

Eliminar (con copia de seguridad previa) el valor UpperFilters si contiene solo WsResetDevice, o editarlo para quitar únicamente esa entrada si convive con otras. Tras reiniciar, el evento desaparece.

Preparación antes de tocar el Registro

Antes de cualquier modificación, implementa una estrategia de reversión:

  1. Crea un punto de restauración del sistema.
  2. Exporta la clave completa a un archivo .reg: reg export "HKLM\SYSTEM\CurrentControlSet\Control\Class\{36fc9e60-c465-11cf-8056-444553540000}" "%userprofile%\Desktop\backupusbclass.reg" /y

Con esto podrás deshacer cualquier cambio en segundos.

Comprobaciones rápidas

Opcionalmente, confirma si el archivo citado existe. Si no está, la entrada es claramente huérfana.

dir C:\Windows\System32\drivers\WsResetDevice.sys
dir C:\Windows\SysWOW64\drivers\WsResetDevice.sys

En la gran mayoría de casos no aparecerá, porque ese archivo no pertenece a Windows ni a Microsoft Store.

Edición segura de UpperFilters

Sigue los pasos con cuidado:

  1. Abre regedit como administrador y ve a: Equipo\HKEYLOCALMACHINE\SYSTEM\CurrentControlSet\Control\Class\{36fc9e60-c465-11cf-8056-444553540000}
  2. Localiza el valor UpperFilters en el panel derecho.
  3. Haz doble clic para editar:
    • Si UpperFilters solo contiene WsResetDevice o WsResetDevice.sys, elimina el valor UpperFilters por completo.
    • Si hay varios nombres (una lista con saltos de línea), elimina solo WsResetDevice y deja intactos los demás.
  4. Reinicia el equipo.
  5. Abre el Visor de eventos y comprueba que el aviso ha desaparecido.

Cuándo no deberías borrar todo el valor

No elimines otros filtros legítimos. En algunos equipos pueden figurar filtros de fabricantes (por ejemplo, software de seguridad de puerto USB, soluciones de virtualización o herramientas de auditoría). Si ves más entradas y no estás seguro, exporta la clave, documenta los nombres y elimina únicamente WsResetDevice.

Atajo en consola para revisar y limpiar

Consolida el diagnóstico con comandos de línea:

rem Mostrar el contenido de UpperFilters
reg query "HKLM\SYSTEM\CurrentControlSet\Control\Class\{36fc9e60-c465-11cf-8056-444553540000}" /v UpperFilters

rem Hacer copia de seguridad de la clave
reg export "HKLM\SYSTEM\CurrentControlSet\Control\Class{36fc9e60-c465-11cf-8056-444553540000}" "%userprofile%\Desktop\backup\usb\class.reg" /y 

Automatización con PowerShell

Para administradores que prefieren un procedimiento reproducible y auditable, este script realiza una copia de seguridad y elimina únicamente la entrada problemática si está sola o acompañada. Incluye salida explicativa:

# Ejecutar en PowerShell con privilegios elevados
$Key = "HKLM:\SYSTEM\CurrentControlSet\Control\Class\{36fc9e60-c465-11cf-8056-444553540000}"
$Export = "$env:USERPROFILE\Desktop\backupusbclass.reg"

Copia de seguridad

reg export "HKLM\SYSTEM\CurrentControlSet\Control\Class{36fc9e60-c465-11cf-8056-444553540000}" \$Export /y | Out-Null
Write-Host "Copia de seguridad guardada en \$Export"

Leer UpperFilters

try {
\$val = Get-ItemProperty -Path \$Key -Name UpperFilters -ErrorAction Stop
} catch {
Write-Host "No existe UpperFilters. Nada que cambiar."
exit 0
}

Normalizar a lista

\$filters = @()
if (\$val.UpperFilters -is \[string]) { \$filters = @(\$val.UpperFilters) } else { \$filters = \$val.UpperFilters }

Buscar la entrada sospechosa (con o sin .sys)

\$targetNames = @("WsResetDevice","WsResetDevice.sys")
\$present = \$filters | Where-Object { \$targetNames -contains $\_ }

if (-not \$present) {
Write-Host "UpperFilters no contiene WsResetDevice. Sin cambios."
exit 0
}

Quitar solo la entrada objetivo

\$new = \$filters | Where-Object { \$targetNames -notcontains $\_ }

if (\$new\.Count -eq 0) {

Si era el único, eliminar completamente UpperFilters

Remove-ItemProperty -Path \$Key -Name UpperFilters -Force
Write-Host "Eliminado UpperFilters (contenía únicamente WsResetDevice). Reinicia el equipo."
} else {

Si hay más, conservarlos

Set-ItemProperty -Path \$Key -Name UpperFilters -Value \$new -Type MultiString
Write-Host "Eliminada la entrada WsResetDevice. Resto de filtros conservados. Reinicia el equipo."
} 

Relación con la clase de dispositivos USB

La clave de clase utilizada corresponde a controladores USB. Colocar un filtro ahí impacta a todo el subsistema de puertos y dispositivos, por lo que el intento de carga sucede muy temprano y el fallo queda registrado incluso si no observas anomalías visibles como dispositivos sin controlador.

Cómo validar que el problema se ha resuelto

  • Reinicia dos o tres veces el equipo para asegurar que el aviso no reaparece.
  • En el Visor de eventos, filtra por origen “Application Popup” y comprueba la ausencia de entradas nuevas con esa ruta.
  • Conecta un dispositivo USB y verifica funcionamiento normal.

Medidas de diagnóstico adicionales

Si a pesar del ajuste el aviso continúa, considera:

  • Arranque limpio: desactiva servicios y aplicaciones de terceros para aislar software que registre filtros indebidamente.
  • Reparación en sitio: una reinstalación de Windows conservando archivos y apps corrige pilas de controladores dañadas sin formatear.
  • Escaneo sin conexión: ejecuta el análisis sin conexión de la solución de seguridad integrada para descartar restos maliciosos que hayan intentado anclar un filtro.

Buenas prácticas al tratar con filtros

  • Mantén inventariado qué software de seguridad, virtualización o control de dispositivos instalas; muchos usan filtros legítimos y documentados.
  • Evita limpiar a ciegas: documenta y respalda antes de tocar.
  • Si sustituyes equipos, asegúrate de desinstalar correctamente herramientas que integren filtros para que sus instaladores retiren las entradas.

Tabla de decisiones

Situación observadaAcción recomendadaEfecto esperado
UpperFilters solo contiene la entrada sospechosaEliminar el valor completoEl aviso deja de registrarse tras reinicio
UpperFilters contiene varias entradasEditar y quitar únicamente la entrada sospechosaSe mantiene la funcionalidad de otros filtros
El archivo existe en la carpeta indicadaEscanear con seguridad y evaluar la legitimidadConfirmar si es un remanente o un componente real
La clave no tiene UpperFiltersNo actuar; revisar otras clases de dispositivoDescartar falso positivo y continuar diagnóstico

Preguntas frecuentes

¿Es seguro borrar UpperFilters?
Sí, si el valor contiene únicamente la referencia falsa. Si hay más entradas, elimina solo la problemática. Siempre con copia de seguridad previa.

¿Por qué desaparece el aviso al usar un perfil nuevo?
Porque algunos programas ajustan configuraciones de clase desde instaladores que se ejecutan con privilegios de sistema; el perfil nuevo no toca esa clave, pero la clave está en la colmena de máquina. El síntoma puede parecer dependiente del usuario, aunque la raíz está a nivel de sistema.

¿Por qué aparece la ruta de la carpeta de redirección de aplicaciones?
SysWow64 contiene binarios de compatibilidad y no es la ubicación típica para controladores de kernel. Por eso la ruta refuerza la hipótesis de un registro incorrecto.

¿Qué pasa si borro otra entrada legítima por error?
Restaura el archivo .reg exportado o usa el punto de restauración. Se trata de una operación segura y reversible si has seguido las copias de seguridad.

Checklist de ejecución rápida

  • Crear punto de restauración.
  • Exportar la clave de clase de USB.
  • Comprobar si el archivo existe.
  • Eliminar o editar con precisión el valor de filtros superiores.
  • Reiniciar y verificar en el Visor de eventos.

Resumen ejecutivo

El registro repetido de “Application Popup” citando WsResetDevice.sys suele deberse a un valor de UpperFilters mal configurado en la clase de controladores USB. Basta con eliminar la referencia huérfana —o editar el valor para quitar solo esa entrada— tras realizar una copia de seguridad y crear un punto de restauración. La corrección es inmediata: al reiniciar, el evento deja de aparecer. Esta solución aborda la causa raíz y evita medidas más drásticas como reinstalaciones innecesarias.

Guía ampliada para profesionales

Si administras varios equipos, conviene incluir esta verificación en tus listas de control post-imagen o posmigración:

  1. Revisión de clases críticas: además de la clase USB, examina HKLM\SYSTEM\CurrentControlSet\Control\Class en busca de valores UpperFilters o LowerFilters con nombres sospechosos que no correspondan a proveedores reconocidos.
  2. Auditoría de filtros activos: emplea herramientas de inventariado para listar servicios de tipo kernel driver y contrastarlos con su archivo binario en System32\drivers.
  3. Política de desinstalación: define procedimientos para retirar software que instale filtros, asegurando que sus desinstaladores ejecuten limpieza en clave de clases.
  4. Supervisión de eventos: genera alertas cuando aparezcan “Application Popup” con rutas a \SystemRoot\* dentro de \SysWow64\DRIVERS, patrón que a menudo indica entradas inválidas.

Análisis de causa raíz y prevención

La presencia de un nombre como WsResetDevice en filtros superiores sugiere que algún programa —legítimo o no— registró equivocadamente un controlador con un identificador parecido a la herramienta de reinicio de la tienda. Las principales vías de entrada son instaladores fallidos, software experimental o paquetes mal empaquetados. Para prevenir incidentes similares:

  • Evita instalar controladores desde fuentes no verificadas.
  • Usa cuentas con privilegios mínimos para las tareas diarias.
  • Mantén políticas de control de cambios y registro de lo instalado en cada estación.

Conclusión

Cuando un aviso persiste a pesar de diagnósticos estándar, mirar la pila de filtros de clase puede marcar la diferencia. En este caso, eliminar la entrada huérfana WsResetDevice del valor UpperFilters en la clase USB resuelve el problema de raíz, preservando la estabilidad del sistema y evitando pasos de reparación más intrusivos.


Procedimiento detallado final

  1. Crear punto de restauración y exportar: reg export "HKLM\SYSTEM\CurrentControlSet\Control\Class\{36fc9e60-c465-11cf-8056-444553540000}" "%userprofile%\Desktop\backupusbclass.reg" /y
  2. Comprobar si existe el archivo citado: dir C:\Windows\SysWOW64\drivers\WsResetDevice.sys
  3. Eliminar la referencia equivocada:
    • En el Editor del Registro, ir a la clave de clase y editar UpperFilters.
    • Si es la única entrada, borrar el valor completo.
    • Si hay otras, quitar solo la cadena WsResetDevice.
  4. Reiniciar y verificar.

Con estos pasos, el sistema deja de intentar cargar un controlador inexistente y el Visor de eventos queda limpio de ese aviso en los inicios posteriores.

Índice