Muszę zautomatyzować deinstalację i ponownie zainstalować sterownik w systemie Windows 7. Proces ręcznego wykonania tej czynności to:
- Początek
- Kliknij prawym przyciskiem myszy Komputer> Zarządzaj
- Menedżer urządzeń> Adaptery sieciowe
- Kliknij prawym przyciskiem myszy Intel (R) Dual band Wireless-AC 7260> Odinstaluj
- NIE USUWAJ, pozostaw opcję usuwania niezaznaczoną, po prostu naciśnij OK, aby ją odinstalować.
- Kliknij prawym przyciskiem myszy Karty sieciowe> Skanuj w poszukiwaniu zmian sprzętu
Muszę regularnie wykonywać te czynności, dlatego chciałbym znaleźć sposób ich automatyzacji.
Znalazłem te dwa narzędzia wiersza poleceń, które wydają się odpowiednie, ale żadne z nich nie wydaje się robić dokładnie tego, czego chcę.
wmic
# Outputs a list. I can parse this to find the index of the device.
wmic nic get name, index
wmic path win32_networkadapter where index=<from above> call disable
wmic path win32_networkadapter where index=<from above> call enable
Te polecenia mają dane wyjściowe, które sugerują, że zrobiły wszystko, co powinny, ale nie ma to takiego samego efektu, jak odinstalowanie i ponowna instalacja sterownika.
pnputil
pnputil -e
To wyświetla listę. Wydaje się, że nie zawiera tej samej czytelnej dla człowieka nazwy używanej w Menedżerze urządzeń (co zrobiło to wmic powyżej), ale widzę to urządzenie na liście, które moim zdaniem to jest:
Published name : oem186.inf
Driver package provider : Intel
Class : Network adapters
Driver date and version : 08/01/2013 16.1.3.1
Signer name : Microsoft Windows Hardware Compatibility Publisher
Mam z tym jednak kilka problemów. Kiedy wchodzę do Menedżera urządzeń GUI i klikam prawym przyciskiem myszy Sterownik> Właściwości> Zakładka Sterownik> Szczegóły sterownika, wyświetla następujące pliki:
C:\windows\system32\DRIVERS\Netwfw02.dat
C:\windows\system32\DRIVERS\NETwsw02.sys
C:\windows\system32\drivers\vwifibus.sys
Żadna z nich nie jest nazwą, która pnputil
go wywołała. Co więcej, karta Szczegóły> Zawarte Infs nazywa to netvwifibus.inf
- również nie jest to coś, co pnputil
nazywa się.
Innym problemem pnputil
jest to, że wydaje się, że nie ma polecenia odinstalowania. Wszystko, co ma pnputil -d
, to to, że usuwa pakiet (co to jest pakiet? Czym to różni się od sterownika? Czy są one takie same?) Moje instrukcje ręczne wyraźnie nie usuwają sterownika, tylko go odinstalowują. Waham się nawet przed skorzystaniem z tej opcji usuwania, ponieważ nie widzę łatwego sposobu jej cofnięcia, jeśli okaże się, że to niewłaściwa rzecz.
Podsumowanie
wmic
mogę wyłączyć i włączyć sterowniki, ale chcę je odinstalować i ponownie zainstalować.
pnputil
może dodawać i usuwać pakiety. Słowo delete przeraża mnie, ponieważ wydaje się, że nie oferuje łatwego tworzenia kopii zapasowych ani wycofywania, więc nie próbowałem tego. Co to jest i tak pakiet? Jaki jest związek z kierowcą ... czy to to samo?
Odpowiedzi:
PnP, pakiety i sterowniki
Twoje urządzenie jest urządzeniem PnP (Plug and Play) - oznacza to, że system Windows automatycznie wybiera sterownik, który będzie używany dla tego urządzenia. Jednym z miejsc, w których szuka sterowników, jest Sklep sterowników na komputerze lokalnym. Sklep ze sterownikami zawiera pakiety sterowników. Kilka pakietów dla jednego urządzenia może być obecnych, a jeden pakiet może zawierać sterowniki dla wielu urządzeń. Gdy urządzenie nie ma przypisanego sterownika, menedżer PnP znajduje kompatybilne sterowniki, szereguje je , wybiera najlepszy i instaluje ten sterownik.
Po ręcznym pobraniu i zainstalowaniu sterownika jego kopia jest umieszczana w pakiecie Driver Store jako pakiet.
Po ręcznym odinstalowaniu sterownika i wybraniu opcji usuwania w Menedżerze urządzeń - usuwa on również odpowiedni pakiet ze Sklepu sterowników.
wmic, pnputil
Aby zautomatyzować dokładne kroki pan wspomniał, zarówno
wmic disable
ipnputil -d
nie jest dla ciebie dobre.pnputil
po prostu dodaje / usuwa pakiety, PnP Manager wybiera, co zainstalować.Chcesz odinstalować sterownik (ale nie usuń jego pakietu i wymuś ponowne skanowanie PnP).
proponowane rozwiązanie
Spróbowałbym użyć Windows Device Console (Devcon.exe) . Jego
remove
polecenie powinno usunąć urządzenie z drzewa urządzeń i pozostawić pakiet w spokoju - podobnie jak w krokach 4 i 5. Korzystając z niegorescan
, można uruchomić krok 6. Można go znaleźćdevcon
w Windows Driver Kit .Możesz także napisać program za pomocą funkcji instalacji urządzenia publicznego
źródło
code
tagu, używając backticks zamiast cudzysłowu, aby dołączyć link. To bardzo dokładna odpowiedź. +1