El programa de ejemplo USBView.exe no enumera dispositivos anteriores a Windows equipos basados en SP1 de XP

Seleccione idioma Seleccione idioma
Id. de artículo: 838100 - Ver los productos a los que se aplica este artículo
Expandir todo | Contraer todo

En esta página

Síntomas

Puede experimentar los síntomas siguientes cuando utilice el programa de USBView.exe para enumerar dispositivos bus serie universal (USB) y host controladores:
  • Problema A - no se enumeran los controladores de host USB 2.0 en equipos basados en Microsoft Windows 2000.
  • Problema B - no se muestran los dispositivos USB adjuntos.

    La versión del programa USBView.exe creada utilizando Windows XP Service Pack 1 Windows controlador Development Kit (DDK) no muestra los dispositivos USB cuando ejecuta el ejemplo en los sistemas operativos siguientes:
    • La versión de lanzamiento de Microsoft Windows XP.
    • Cualquier versión de Microsoft Windows 2000, Microsoft Windows Millennium Edition o Microsoft Windows 98.

Causa

Problema A - no se enumeran los controladores de host USB 2.0 en equipos basados en Windows 2000

El programa USBView.exe no enumera controladores de host de USB 2.0 en equipos basados en Windows 2000 porque dos pilas de controladores USB diferentes se ejecutan en equipos basados en Windows 2000, como sigue:
  • La primera pila se utiliza para controladoras de host USB 1.1.
  • La segunda pila se utiliza para los controladores de host USB 2.0.
Dos pilas de controladores USB crear nombres de vínculo simbólico que tengan el formato siguiente, donde x representa un número de instancia:
\DosDevices\HCD x
Dos pilas de controladores USB iniciar el número de instancia en 0. Este comportamiento significa que intenten crear el siguiente nombre de vínculo simbólico dos pilas de controladores:
\DosDevices\HCD0
La pila de controladores intenta crear este vínculo simbólico nombre después de la pila del controlador de USB 1.1 de USB 2.0 se crea el nombre de vínculo simbólico. Por tanto, no se crea el nombre de vínculo simbólico y no se puede tener acceso a la controladora de host USB 2.0 a través de un vínculo simbólico.

Problema B - no se muestran los dispositivos USB adjuntos

La pila del controlador USB que se incluye en Windows XP SP1 incluye compatibilidad con un nuevo control de entrada y salida (IOCTL), que es denominado como sigue:
IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX
Este IOCTL reemplaza la versión anterior de IOCTL en el que se denomina IOCTL_USB_GET_NODE_CONNECTION_INFORMATION. Se utilizó la versión anterior de la IOCTL en versiones anteriores del programa USBView.exe.

El programa USBView.exe se modificó para utilizar este IOCTL más reciente, porque devuelve información acerca de si el dispositivo está funcionando a alta velocidad.

Si intenta utilizar IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX en versiones anteriores a equipos basados en XP SP1 de Windows, el intento no es correcto. Además, no se muestra ninguna información sobre el dispositivo.

Solución

Problema A - no se enumeran los controladores de host USB 2.0 en equipos basados en Microsoft Windows 2000

Permitir el uso de un nombre de vínculo simbólico, la nueva pila de controladores USB admite además el uso de una interfaz de dispositivo basado en GUID.

La función EnumerateHostControllers en el archivo Enum.c incluye una sección cuyos comentarios explican cómo utilizar esta técnica para enumerar el controlador de host. Puede modificar esta función para detectar cuando se ejecuta en un equipo basado en Windows 2000. Puede utilizar el método de enumeración basado en GUID y el método de vínculo simbólico para enumerar todos los controladores de host USB.

Problema B - no se muestran los dispositivos USB adjuntos

Puede modificar todos los usos del nuevo IOCTL, IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX, en el programa USBView.exe. Puede modificar el IOCTL DIRIGIDO por lo que si el comando IOCTL no es correcto, el programa USBView.exe retrocede para que utilice la versión anterior de la IOCTL IOCTL_USB_GET_NODE_CONNECTION_INFORMATION.

Este comportamiento de reserva permite al programa USBView.exe aún informe si un dispositivo está funcionando a alta velocidad en un equipo que ejecuta Windows XP SP1 o versiones posteriores de Windows. Además, este comportamiento de reserva también muestra los dispositivos USB anterior a Windows equipos basados en SP1 de XP.

Más información

Este problema se ha corregido en el DDK de Windows Server 2003 Service Pack 1.

Propiedades

Id. de artículo: 838100 - Última revisión: jueves, 04 de agosto de 2005 - Versión: 2.0
La información de este artículo se refiere a:
  • Microsoft Windows XP Driver Development Kit
Palabras clave: 
kbmt kbprb KB838100 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 838100

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com