Przykładowy program USBView.exe nie wylicza urządzeń w systemach starszych niż Windows XP z dodatkiem SP1 na komputerach

Tłumaczenia artykułów Tłumaczenia artykułów
Numer ID artykułu: 838100 - Zobacz jakich produktów dotyczą zawarte w tym artykule porady.
Rozwiń wszystko | Zwiń wszystko

Na tej stronie

Symptomy

Podczas wyliczania urządzeń uniwersalnej magistrali szeregowej (USB) i kontrolerów hosta za pomocą programu USBView.exe, mogą wystąpić następujące symptomy:
  • Problem A - kontrolerów hosta USB 2.0 nie są wyliczane na komputerach z systemem Microsoft Windows 2000.
  • Problem B - urządzenia USB dołączonego nie są wyświetlane.

    Wersja programu USBView.exe zbudowany przy użyciu systemu Windows XP usługi Service Pack 1 systemu Windows Driver Development Kit (DDK) nie są wyświetlane wszystkie urządzenia USB podczas uruchamiania próbki w następujących systemach operacyjnych:
    • Wersja systemu Microsoft Windows XP.
    • Dowolna wersja systemu Microsoft Windows 2000, Microsoft Windows Millennium Edition lub Microsoft Windows 98.

Przyczyna

Problem A - kontrolerów hosta USB 2.0 nie są wyliczane na komputerach z systemem Windows 2000

USBView.exe program nie wyliczyć kontrolerów hosta USB 2.0 na komputerach z systemem Windows 2000, ponieważ dwie różne stosów sterownika USB na komputerach z systemem Windows 2000 działa w następujący sposób:
  • Pierwszy stosu jest używany dla kontrolerów hosta USB 1.1.
  • Drugi stosu jest używany dla kontrolerów hosta USB 2.0.
Zarówno stosów sterownika USB Utwórz łącze symboliczne nazwy, które mają następujący format, gdzie x reprezentuje liczbę instancji:
\DosDevices\HCDx
Zarówno stosów sterownika USB uruchomić wystąpienie numer 0. To zachowanie oznacza, że zarówno stosów sterownika spróbuj utworzyć następującą nazwę łącza symbolicznego:
\DosDevices\HCD0
Próbuje utworzyć nazwę tego łącza symbolicznego stosu sterowników USB 2.0 Po stosu sterowników USB 1.1 tworzy łącze symboliczne nazwy. Dlatego nie jest tworzone łącze symboliczne nazwy i kontrolera hosta USB 2.0 nie jest dostępny za pośrednictwem łącza symbolicznego.

Problem B - urządzenia USB dołączonego nie są wyświetlane

Stosu sterowników USB, uwzględnionej w dodatku SP1 dla systemu Windows XP obsługuje nowy formant wejścia i wyjścia (IOCTL) o nazwie w następujący sposób:
IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX
To polecenie funkcji IOCTL zastępuje starszą wersję IOCTL, o nazwie IOCTL_USB_GET_NODE_CONNECTION_INFORMATION. We wcześniejszych wersjach programu USBView.exe użyto starszych wersji funkcji IOCTL.

USBView.exe program został zmodyfikowany używać tego IOCTL nowsze, ponieważ zwraca informacje o czy urządzenie USB działa przy wysokiej prędkości obrotowej.

Jeśli spróbujesz użyć IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX na starszych niż Windows XP z dodatkiem SP1 na komputerach, próba się nie powiedzie. Ponadto żadne informacje o urządzeniu USB jest wyświetlany.

Rozwiązanie

Problem A - kontrolerów hosta USB 2.0 nie są wyliczane na komputerach z systemem Microsoft Windows 2000

Oprócz obsługi użycia nazwy łącza symbolicznego, nowe stosu sterowników USB obsługuje interfejs urządzenia na podstawie identyfikatora GUID.

W EnumerateHostControllers Funkcja w pliku Enum.c zawiera sekcja, której komentarze wyjaśniają jak używać tej techniki do wyliczenia kontroler hosta. Można zmodyfikować tę funkcję, aby wykryć, kiedy jest uruchomiony na komputerze z systemem Windows 2000. Można następnie użyć metody wyliczania opartego na identyfikator GUID i metoda łącza symbolicznego wyliczyć wszystkich kontrolerów hosta USB.

Problem B - urządzenia USB dołączonego nie są wyświetlane

Można zmodyfikować wszystkie zastosowania nowych funkcji IOCTL IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX, w programie USBView.exe. Polecenie IOCTL można zmodyfikować tak, że jeśli IOCTL nie powiedzie się, USBView.exe program nastąpi powrót do wcześniejszych wersji IOCTL IOCTL_USB_GET_NODE_CONNECTION_INFORMATION.

To działanie rezerwowe umożliwia programowi USBView.exe nadal raportu, czy urządzenie działa przy wysokiej prędkości obrotowej na komputerze z systemem Windows XP z dodatkiem SP1 lub nowszych wersjach systemu Windows. To działanie rezerwowe wyświetla ponadto również urządzeń USB w systemach starszych niż Windows XP z dodatkiem SP1 na komputerach.

Więcej informacji

Ten problem został rozwiązany w systemu Windows Server 2003 Service Pack 1 DDK.

Właściwości

Numer ID artykułu: 838100 - Ostatnia weryfikacja: 24 czerwca 2011 - Weryfikacja: 2.0
Informacje zawarte w tym artykule dotyczą:
  • Microsoft Windows XP Driver Development Kit
Słowa kluczowe: 
kbprb kbmt KB838100 KbMtpl
Przetłumaczone maszynowo
WAŻNE: Ten artykuł nie został przetłumaczony przez człowieka, tylko przez oprogramowanie do tłumaczenia maszynowego firmy Microsoft. Firma Microsoft oferuje zarówno artykuły tłumaczone przez ludzi, jak i artykuły tłumaczone maszynowo, dzięki czemu każdy użytkownik może uzyskać dostęp do całej zawartości bazy wiedzy Knowledge Base we własnym języku. Prosimy jednak pamiętać, że artykuły przetłumaczone maszynowo nie zawsze są doskonałe. Mogą zawierać błędy słownictwa, składni i gramatyki, przypominające błędy robione przez osoby, dla których język użytkownika nie jest językiem ojczystym. Firma Microsoft nie odpowiada za wszelkie nieścisłości, błędy lub szkody spowodowane nieprawidłowym tłumaczeniem zawartości oraz za wykorzystanie tej zawartości przez klientów. Oprogramowanie do tłumaczenia maszynowego jest często aktualizowane przez firmę Microsoft.
Anglojęzyczna wersja tego artykułu to:838100

Przekaż opinię

 

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