- PnPUtil haldab draivereid ja seadmeid konsoolist täieliku kontrolliga.
- DriverStore koondab pakette; saate neid eksportida, installida ja puhastada.
- Käsud võti: draiverite/seadmete/klasside lisamine/kustutamine/eksportimine.
- 32/64-bitiste (SysNative) kontekstide lahendamine hoiab ära juurutamise tõrked.
Kui haldate Windowsi süsteeme , peate varem või hiljem tegelema draiveritega. Selles kontekstis on PnPUtil Šveitsi armee nuga , mis säästab teie aega, hallates draiveripakette käsurealt turvaliselt ja korduvalt.
Lisaks isoleeritud .INF-faili installimisele võimaldab see tööriist teil lisada, installida, loetleda, eksportida, keelata, taaskäivitada ja eemaldada nii draivereid kui ka seadmeid, täpsemalt klassi, siini, riistvara identifikaatorite või konkreetsete eksemplaride alusel. Näete reaalseid käske, näpunäiteid ja levinud probleeme (ja nende lahendusi), et saaksite seda üllatusteta praktikas rakendada.
Mis on PnPUtil ja mida see teha saab?
PnPUtil (PnPUtil.exe) on konsooliutiliit, mis võimaldab administraatoritel teha toiminguid Plug and Play (PnP) draiveripakettidega ja hallata seadmeid. See sobib ideaalselt juurutamiseks, ettevõtte kujutiste loomiseks või lihtsalt draiverihoidla puhtana hoidmiseks.
PnPUtil abil saate draiveripoodi paketi lisada , selle arvutisse installida, eemaldada ja olemasolevad draiverid loetleda. Loendis kuvatakse OEM-paketid (need, mis ei ole süsteemi osa), samas kui integreeritud paketid on osa Windowsi baasinstallatsioonist või selle hoolduspakettidest ja ei kuvata OEM-pakettidena.
Lisaks draiveritele võimaldab PnPUtil teil töötada konkreetsete seadmetega : keelata, lubada, taaskäivitada, eemaldada, otsida riistvaramuudatusi või isegi vaadata seadmepuud ja konfiguratsiooniklasse. Kõik see ühest ja samast tööriistast.
Oluline punkt: paljud neist toimingutest nõuavad konsooli avamist administraatoriõigustega , eriti süsteemi oleku muutmisel või riistvara skannimisel.

Kus asub PnPUtil ja kuidas abi saada?
PnPUtil on Windows Vistast alates eelinstallitud; see asub kaustas %windir%\system32 ja eraldi allalaadimispaketti pole. See tähendab, et see on juba olemas igas Windowsi moodsas versioonis ilma midagi täiendavat installimata.
Sisseehitatud abi kuvamiseks avage konsooli aken administraatorina ja käivitage:
pnputil /?
Seal näete kõigi saadaolevate käskude ja nende modifikaatorite süntaksit, mis võimaldab teil avastada täpsemaid parameetreid seansist lahkumata.

DriverStore ja INF-failid: mida peate teadma
Windows haldab draiveripakettide hoidlat aadressil %systemroot%\System32\DriverStore\FileRepository . Seda nimetatakse DriverStore'iks ja sinna salvestatakse draiverid, mille süsteem vastava riistvara tuvastamisel ära tunneb ja installib.
INF -failid on "retseptiraamatud" , mis ütlevad Windowsile, kuidas draiverit installida ja konfigureerida. Tavaliselt kaasnevad nendega .cat-failid (signatuurikataloog), .dll-failid ja mõnikord ka .cab-failid. Mõnda mudelit saab installida ühe INF-failiga, teised aga vajavad mitut.
Tüüpiline kasutusjuhtum ettevõttekeskkondades on mitme mudeli printeridraiverite eelintegreerimine . Sel viisil on printerite juurutamisel draiverid süsteemis juba saadaval ilma käsitsi kopeerimiseta. See saavutatakse pakettide lisamisega DriverStore'i PnPUtil abil.
Klassikaline näide: privilegeeritud CMD konsoolist , kaustast, kus asub INF-fail , saate käivitada järgmise käsu:
pnputil -a Citizen.inf
Parameeter -a (lisa) lisab paketi Windowsi hoidlasse. Kui haldate sama struktuuri sees sama tootja erinevaid mudeleid, saate metamärgi abil korraga lisada ka mitu INF-faili:
pnputil -a *.inf
Protsessi käigus võib Windows teid draiveri allkirja eest hoiatada . Turvariskide vältimiseks on oluline kasutada tootja allkirjaga draivereid; kulude tõttu ei allkirjasta mõned müüjad kogu oma kataloogi, seega kaaluge enne paketi installimist selle päritolu ja usaldusväärsust.
Olulised PnPUtil käsud koos reaalsete näidetega
PnPUtili võimsus peitub selle käskude valikus. Altpoolt leiate põhjaliku hispaaniakeelse juhendi koos oluliste näidetega, mida peaksite valdama.
Draiverite lisamine ja installimine
Lisa lattu konkreetne pakk :
pnputil /add-driver x:\driver.inf
Lisa kaustast mitu paketti :
pnputil /add-driver c:\oem\*.inf
Lisage pakett ja installige see kohe olemasolevatesse seadmetesse:
pnputil /add-driver device.inf /install
Näpunäide: Kui kavatsete laadida palju draivereid alamkaustadega struktuuri, saate neid rekursiivselt läbi vaadata käsuga /subdirs ja kombineerida need käsuga /install , et neid kohe rakendada.
Kustuta pakid laost
Eemalda DriverStore'ist konkreetne pakett :
pnputil /delete-driver oem0.inf
Sundkustutamine lukkude olemasolul:
pnputil /delete-driver oem1.inf /force
Pidage meeles, et aktiivsete seadmete kõrvaltoimete vältimiseks on soovitatav eemaldada ainult kasutamata pakendid .
Seadmete lubamine ja keelamine
Seadme keelamine selle eksemplari identifikaatori abil :
pnputil /disable-device "USB\VID_045E&PID_00DB\6&870CE29&0&1"
Keela kõik seadmed , mis vastavad riistvara identifikaatorile või on ühilduvad:
pnputil /disable-device /deviceid "USB\Class_03"
Keela kindla klassi seadmed antud siinil:
pnputil /disable-device /class "USB" /bus "PCI"
Vastupidise toimingu jaoks saate need lubada samaväärsete parameetritega:
pnputil /enable-device "USB\VID_045E&PID_00DB\6&870CE29&0&1"
pnputil /enable-device /deviceid "USB\Class_03"
pnputil /enable-device /class "USB" /bus "PCI"
Need toimingud on kasulikud, kui teil on vaja jälgida seadmete olekut hulgi või tuvastuskriteeriumide alusel; näiteks USB-kontrollerite haldamisel keskkondades, kus on palju välisseadmeid.
Loetlege klassid, seadmed ja draiverid
Loetlege kõik seadme konfiguratsiooniklassid :
pnputil /enum-classes
Loetlege teave konkreetse klassi (nt ekraanide ) kohta:
pnputil /enum-classes /class "Display"
Loetlege süsteemiseadmed. Lubatud seadmed kuvatakse kui Käivitatud ja keelatud seadmed kui Keelatud.
pnputil /enum-devices
Väga kasulikud seadmete loendamise variandid :
pnputil /enum-devices /connected
pnputil /enum-devices /instanceid "ROOT\SYSTEM\0000"
pnputil /enum-devices /class "Display"
pnputil /enum-devices /problem 28
pnputil /enum-devices /problem /deviceids
pnputil /enum-devices /deviceid "USB\Class_03"
pnputil /enum-devices /bus "PCI"
OEM-draiveripakettide loend :
pnputil /enum-drivers
Filtreeri klassi järgi või lisa iga paketi moodustavad failid:
pnputil /enum-drivers /class "System"
pnputil /enum-drivers /files
Liideste loend
Näita ainult lubatud liideseid :
pnputil /enum-interfaces /enabled
Filtreeri liidese klassi GUID järgi:
pnputil /enum-interfaces /class "{884b96c3-56ef-11d1-bc8c-00a0c91405dd}"
See on kasulik teatud liidestega seotud kommunikatsiooniprobleemide või teenuste diagnoosimisel .
Ekspordi draiverid
Üksiku paketi eksportimine :
pnputil /export-driver oem6.inf .
Ekspordi kõik paketid teele (mis peab juba olemas olema):
pnputil /export-driver * c:\backup
Massiline eksport sobib ideaalselt varundamiseks või juurutuste ettevalmistamiseks teistes sama operatsioonisüsteemiga arvutites.
Seadmete eemaldamine, taaskäivitamine ja skannimine
Eemalda üks seade eksemplari kohta :
pnputil /remove-device "USB\VID_045E&PID_00DB\6&870CE29&0&1"
Seadmete eemaldamine riistvara identifikaatori / ühilduvuse või klassi ja siini järgi:
pnputil /remove-device /deviceid "USB\Class_03"
pnputil /remove-device /class "USB" /bus "PCI"
Taaskäivitage seadmed valikuliselt või üldiste kriteeriumide alusel:
pnputil /restart-device "USB\VID_045E&PID_00DB\6&870CE29&0&1"
pnputil /restart-device /deviceid "USB\Class_03"
pnputil /restart-device /class "USB" /bus "PCI"
Avastage süsteemi tuvastatud riistvaramuudatusi :
pnputil /scan-devices
Tähtis: Seadme skannimise käivitamiseks on vaja administraatoriõigusi .
Seadme ja konteineri puu
Loetlege kogu seadmete puu:
pnputil /enum-devicetree
Valige konkreetne juursõlm ja lisage lisateavet:
pnputil /enum-devicetree "ROOT\SYSTEM\0000"
pnputil /enum-devicetree ROOT\SYSTEM\0000 /drivers
pnputil /enum-devicetree /connected /interfaces
pnputil /enum-devicetree /stack /interfaces /drivers /services
Loetlege seadme konteinerid (kõik, üks konkreetne ja koos väljundvalikutega):
pnputil /enum-containers
pnputil /enum-containers /containerid "{00000000-0000-0000-ffff-ffffffffffff}"
pnputil /enum-containers /connected /devices
pnputil /enum-containers /disconnected /devices /format xml /output-file disconnecteddevices.xml
Need täiustatud vaated aitavad mõista kontrollerite ja teenuste sõltuvusi ja virna keeruliste intsidentide korral.
Draiverite hulgieksport ja installimine (CMD ja PowerShell)
Draiverite teisaldamiseks sama mudeli ja operatsioonisüsteemiga arvutite vahel saate kogu DriverStore'i PnPUtil abil eksportida ja seejärel uuesti importida. See on kiire ja väldib kolmandate osapoolte utiliitide kasutamist.
Esmalt eksportige kõik paketid juba loodud sihtkausta:
pnputil /export-driver * c:\temp\Drivers
Teise võimalusena on teil PowerShellis käepärast võrgusüsteemi natiivne cmdlet: Export-WindowsDriver
Export-WindowsDriver -Online -Destination "c:\temp\Drivers"
Kui see kaust on USB-draivil, võrgudraivil või NAS-il, saate draiverid sihtarvutisse installida kahel viisil: käsitsi (paremklõpsake .INF-failil ja valige "Install") või automaatselt alamkaustade vahel navigeerides ja draivereid rakendades.
pnputil /add-driver "c:\temp\Drivers\*.inf" /subdirs /install /reboot
Valik /reboot võimaldab süsteemil vajadusel installimise lõpuleviimiseks taaskäivitada. Salvestage kindlasti oma töö, sest mõnikord on draiveri tööle hakkamiseks vaja taaskäivitada.
Kui integreerite üldiseid või tootjaspetsiifilisi printeridraivereid, näete pärast importimist, et need ilmuvad süsteemi saadaolevate draiverite loendisse , mis lihtsustab nende valimist uute printerite või seadmete lisamisel.
Kontrolleri lao puhastamine ja hooldus
Aja jooksul võib DriverStore koguneda pakette, mida te enam ei kasuta. Süsteemi puhtama ja turvalisemana hoidmiseks on hea mõte selle sisu perioodiliselt kontrollida.
Alustage seadmes olevate OEM-i (kolmandate osapoolte) pakettide loetlemisega :
pnputil.exe /enum-drivers
Kui tuvastate paketi, mida ei kasutata ja soovite selle OEM-nime määrates eemaldada , saate seda teha vastava käsuga:
pnputil.exe /delete-driver oemX.inf
Kui teil on vaja lisada uus draiver või taastada kustutatud, integreerige see uuesti DriverStore'i:
pnputil.exe /add-driver oem0.inf
Varukoopiate puhul pidage meeles, et saate eksportida konkreetse paketi või kogu lao järgmiselt:
pnputil.exe /export-driver oem6.inf C:\DriverBackup
pnputil.exe /export-driver * C:\DriverBackup
Kui teil on kunagi vaja seadet kohaliku tee kaudu uuesti installida, võimaldab seadmehaldur teil draiverit värskendada ja otsida ettevalmistatud varunduskaustast. See on lihtne viis eksporditud draiveri uuesti rakendamiseks.
Pärisjuhtumid ja probleemide lahendamine
Domeeniga ühendatud serverist printerite juurutamisel või Intune'i (Win32) installide kasutamisel tuleb tavaliselt enne printeridraiveri registreerimist draiver repositooriumisse sisestada . Siin tulebki kasuks PnPUtil.
Kui protsess töötab 32-bitises keskkonnas, aga soovite käivitada PnPUtil'i 64-bitise versiooni, kutsuge SysNative'i tee , et vältida ümbersuunamist SysWOW64-le:
C:\Windows\SysNative\pnputil.exe /add-driver "C:\ruta\al\driver.inf" /install
Siiski on olemas klassikaline probleem: käsk vastab veateatega „ süsteem ei leia määratud faili ”, kuigi INF-fail on olemas. See on tavaliselt tingitud kontekstiprobleemidest: suhteline tee, töökataloog, õigused või seetõttu, et 32-bitine protsess ei lahenda System32-d õigesti ilma SysNative'ita.
Head tavad selle vea vältimiseks:
- Kasutage absoluutseid teid ja jutumärkides: «C:\\temp\\PrintDriver\\KOBS9J__.inf».
- Kutsu PnPUtil alati 64-bitises süsteemis läbi %windir%\SysNative\pnputil.exe kui käivitaja on 32-bitine.
- Veenduge, et INF ja selle sõltuvused (.cab, .dll) on olemas sama töökaust või ligipääsetavatel marsruutidel.
- Kui käivitate Intune'ist, pidage meeles, et see töötab järgmiselt: SüsteemLoo logikaustad eelnevalt (nt C:\Temp) ja kontrolli pääsuloendeid (ACL-e).
Näidisinstallatsioon PowerShelli ja robustse käivitusprotsessiga 64-bitises kontekstis ning väljundlogimisega:
$pnputil = "$env:windir\SysNative\pnputil.exe"
$inf = "C:\\temp\\PrintDriver\\KOBS9J__.inf"
$log = "C:\\temp\\pnputil_log.txt"
New-Item -Path (Split-Path $log) -ItemType Directory -Force | Out-Null
Start-Process -FilePath $pnputil -ArgumentList @("/add-driver", $inf, "/install") -Wait -NoNewWindow -RedirectStandardOutput $log -PassThru
Kui logi väljastatakse tühjana, proovige ka vea ümbersuunamist või jäädvustage väljund otse PowerShelli abil (ilma Start-Process'ita), et tagastuskood alles jääks:
& $pnputil /add-driver $inf /install | Tee-Object -FilePath $log
Printerite installimisel on tüüpiline töövoog järgmine: lisage draiver PnPUtil abil ja seejärel registreerige printeridraiver ( näiteks Add-PrinterDriver abil), viidates DriverStore'is juba oleva INF-faili teele. Kui pakett sisaldab .cab-faili (näiteks gppcl6.cab Canoni draiverites), veenduge, et see on olemas, kuna INF-fail võib sellest sõltuda.
Teine korduv probleem Intune'is on see, et skript loob lõpus korrektselt "märgistusfaili" (mis annab märku skripti valmimisest), kuid draiverit pole installitud. See tähendab tavaliselt, et käivitusprotsess ei tõstnud õigusi õigesti või kontekst ei leidnud INF-faili teed. Probleemi lahendab SysNative'i ja täielike teede kasutamine, C:\\Temp faili eelnev loomine ja PnPUtil väljumiskoodi valideerimine.
Lõpuks, muudatuste skannimisel käsuga `/scan-devices` pidage meeles, et see nõuab administraatori õigusi. Käivitage käsk alati kõrgendatud konsoolis, et vältida juurdepääsuvigu.
PnPUtili valdamine muudab reaalsetes keskkondades kõike: alates piltide ettevalmistamisest eelinstallitud printeritega või draiverite eksportimisest enne vormindamist kuni DriverStore'i puhastamise ja probleemsete seadmete diagnoosimiseni. Selle artikli käskude ja praktiliste harjutuste abil on teil kindel alus draiverite usaldusväärseks haldamiseks Windowsis vähemate üllatustega.
Kirglik kirjanik baitide maailmast ja üldse tehnoloogiast. Mulle meeldib jagada oma teadmisi kirjutamise kaudu ja just seda ma selles ajaveebis teengi, näitan teile kõike kõige huvitavamat vidinate, tarkvara, riistvara, tehnoloogiliste suundumuste ja muu kohta. Minu eesmärk on aidata teil digimaailmas lihtsal ja meelelahutuslikul viisil navigeerida.
