Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Drivrutiner uppdateras när något av följande inträffar:
Guiden för maskinvaruuppdatering körs från Enhetshanteraren.
Obs! Från och med Windows Vista heter den här guiden nu Guiden Uppdatera drivrutinsprogramvara.
Windows Update körs.
Installationsprogramvaran för en enhet körs.
Från och med Windows Vista kan du köra PnPUtil-verktyget från en upphöjd kommandotolk för att installera eller uppdatera drivrutinspaketet för enheten.
Använd följande riktlinjer när du skriver installationsprogram och INF-filer som uppdaterar befintliga drivrutiner.
Installationsprogram kan anropa UpdateDriverForPlugAndPlayDevices genom att ange en INF-fil och ett maskinvaru-ID för att uppdatera drivrutiner för enheter som matchar maskinvaru-ID:t.
Från och med Windows Vista kan installationsprogrammet även anropa något av följande för att uppdatera drivrutiner:
- DiInstallDriver, som förinstallerar en drivrutin och sedan installerar drivrutinen på enheter som finns i systemet som drivrutinen stöder.
- DiInstallDevice, som installerar en angiven drivrutin från drivrutinsarkivet på en angiven enhet som finns i systemet.
Mer information finns i artikeln Att skriva ett program för enhetsinstallation.
När du uppgraderar en drivrutin bör klassinstallationsprogram och co-installationsprogram inte tillhandahålla slutinstallationssidor som svar på DIF_NEWDEVICEWIZARD_FINISHINSTALL om det inte är absolut nödvändigt. Om möjligt hämtar du information om slutförande av installationen från inställningarna för den tidigare installationen.
I den utsträckning det är möjligt bör klassinstallationsprogram och saminstallationsprogram undvika att basera beteendet på om de tillhandahåller en första installation eller uppdaterar drivrutiner för en redan installerad enhet.
Från och med Windows XP tas registervärdena CoInstallers32 och EnumPropPages32 bort innan DIF_REGISTER_COINSTALLERS utförs. INF-filer för tidigare operativsystemversioner måste uttryckligen antingen ta bort dessa värden eller utföra en ändringsåtgärd utan att lägga till dem.
Från och med Windows XP tas registervärdena UpperFilters och LowerFilters bort innan DIF_INSTALLDEVICE skickas. INF-filer för tidigare operativsystemversioner måste uttryckligen antingen ta bort dessa värden eller utföra en ändringsåtgärd utan tillägg på dem.
Använd inteINF DelFiles-direktiv eller INF RenFiles-direktiv när du uppdaterar drivrutiner. Windows kan inte garantera att en viss fil inte används av en annan enhet. (Klassinstallationsprogram och saminstallationsprogram kan ta bort eller byta namn på filer, om de på ett tillförlitligt sätt kan fastställa att inga enheter använder filerna.)
Använd INF DelReg-direktivet för att ta bort gamla enhetsspecifika registerposter från en tidigare installation av enheten, om posterna inte längre behövs. (Ta inte bort globala registerposter.)
Använd inteINF DelService-direktivet i ett INF DDInstall.Services-avsnitt för att ta bort tidigare installerade enhets-/drivrutinstjänster från måldatorn. Windows kan inte garantera att en viss tjänst inte används av en annan enhet. (klassinstallationsprogram och saminstallationsprogram kan ta bort tjänster, om de på ett tillförlitligt sätt kan fastställa att inga enheter använder tjänsterna.)
När du uppdaterar en klassinstallerare, klass-co-installer eller tjänst-DLL måste du ge den nya versionen ett nytt filnamn.
Mer information om INF-filer finns i Skapa en INF-fil och INF-filavsnitt och -direktiv.