Användning av enhetsinstallationsfunktioner

I det här avsnittet sammanfattas enhetsinstallationsfunktionerna. Med hjälp av enhetsinstallationsfunktionerna kan installationsprogrammet utföra följande typer av åtgärder:

  • Installera drivrutiner

  • Hantera DIF-koder.

  • Hantera enhetsinformationsuppsättningar.

  • Hantera förarlistor.

  • Hantera enhetsgränssnitt.

  • Hantera ikoner och andra bitmappar.

Följande tabeller innehåller sammanfattningar av följande typer av funktioner:

Installationsfunktioner för drivrutiner

Funktioner för enhetsinformation

Förarinformationsfunktioner

Hanterare för enhetsinstallation

Anpassningsfunktioner för enhetsinstallation

Installera klassfunktioner

Bitmapps- och ikonfunktioner

Funktioner för enhetsgränssnitt

Enhetsegenskapsfunktioner (Windows Vista och senare)

Registerfunktioner

Andra funktioner

Installationsfunktioner för drivrutin

DiInstallDevice

Installerar ett angivet drivrutinspaket som är förinstallerat i drivrutinsarkivet på en PnP-enhet som finns i systemet. (Windows Vista och senare versioner av Windows)

DiUninstallDevice

Avinstallerar en enhet och tar bort dess enhetsnod (devnode) från systemet. (Windows 7 och senare versioner av Windows)

DiInstallDriver

Förinstallerar ett drivrutinspaket i drivrutinsarkivet och installerar sedan drivrutinspaketet på matchande PnP-enheter som finns i systemet. (Windows Vista och senare versioner av Windows)

DiUninstallDriver

Tar bort ett drivrutinspaket från drivrutinsarkivet. (Windows 10 version 1703 och senare versioner av Windows)

UpdateDriverForPlugAndPlayEnheter

Uppdaterar drivrutinspaketet som är installerat för matchande PnP-enheter som finns i systemet.

DiRollbackDriver

Återställer drivrutinspaketet som är installerat på en angiven enhet till paketet för säkerhetskopieringsdrivrutinen som angetts för enheten. (Windows Vista och senare versioner av Windows)

Funktioner för enhetsinformation

Anmärkning

SetupApi stöds inte i alla utgåvor av Windows. När det är möjligt bör du använda API:er på lägre nivå, till exempel de som är tillgängliga via CfgMgr32.dll. Se Portning från SetupApi till CfgMgr32 för tips.

SetupDiCreateDeviceInfoList

Skapar en tom enhetsinformationsuppsättning. Den här uppsättningen kan associeras med ett klass-GUID.

SetupDiCreateDeviceInfoListEx

Skapar en tom enhetsinformationsuppsättning. Den här uppsättningen kan associeras med ett klass-GUID och kan vara för enheter på en fjärrdator.

SetupDiCreateDeviceInfo

Skapar ett nytt enhetsinformationselement och lägger till det som ny medlem i den angivna enhetens informationsuppsättning.

SetupDiOpenDeviceInfo

Hämtar information om en befintlig enhetsinstans och lägger till den i den angivna enhetsinformationsuppsättningen.

SetupDiEnumDeviceInfo

Returnerar en kontextstruktur för ett enhetsinformationselement i en enhetsinformationsuppsättning.

SetupDiGetDeviceInstanceId

Hämtar enhetsinstans-ID:t som är associerat med ett enhetsinformationselement.

SetupDiGetDeviceInfoListClass

Hämtar klassens GUID som är associerad med en enhetsinformationsuppsättning om den har en associerad klass.

SetupDiGetDeviceInfoListDetail

Hämtar information som är associerad med en enhetsinformationsuppsättning, inklusive klassens GUID, fjärrdatorhandtaget och namnet på fjärrdatorn.

SetupDiGetClassDevPropertySheets

Hämtar referenser till egenskapsbladen för ett angivet enhetsinformationselement eller i enhetskonfigurationsklassen för en angiven enhetsinformationsuppsättning.

SetupDiGetClassDevs

Returnerar en enhetsinformationsuppsättning som innehåller alla enheter i en angiven klass.

SetupDiGetClassDevsEx

Returnerar en enhetsinformationsuppsättning som innehåller alla enheter i en angiven klass på en lokal eller fjärransluten dator.

SetupDiSetSelectedDevice

Anger att det angivna enhetsinformationselementet ska vara den för närvarande valda medlemmen i en enhetsinformationsuppsättning. Den här funktionen används vanligtvis av en installationsguide.

SetupDiGetSelectedDevice

Hämtar den aktuellt valda enheten för det angivna enhetsinformationssetet.

SetupDiRegisterDeviceInfo

Registrerar en nyskapade enhetsinstans med Plug and Play-hanteraren.

SetupDiDeleteDeviceInfo

Tar bort en medlem från den angivna enhetens informationsuppsättning. Den här funktionen tar inte bort den faktiska enheten.

SetupDiDestroyDeviceInfoList

Förstör en enhetsinformationsuppsättning och frigör allt tillhörande minne.

Förarinformationsfunktioner

SetupDiBuildDriverInfoList

Skapar en lista över drivrutiner som är associerade med en angiven enhetsinstans eller med enhetsinformationsuppsättningens globala klassdrivrutinslista.

SetupDiEnumDriverInfo

Räknar upp medlemmar i en informationslista för drivrutiner.

SetupDiGetDriverInfoDetail

Hämtar detaljerad information för ett angivet element för drivrutinsinformation.

SetupDiSetSelectedDriver

Anger den angivna medlemmen i en drivrutinslista som den markerade drivrutinen. Den kan också användas för att återställa drivrutinslistan så att det inte finns någon drivrutin som är vald för tillfället.

SetupDiGetSelectedDriver

Hämtar medlemmen i en drivrutinslista som har valts som drivrutin att installera.

SetupDiCancelDriverInfoSearch

Avbryter en sökning i drivrutinslistan som för närvarande pågår i en annan tråd.

SetupDiDestroyDriverInfoList

Förstör en förarens informationslista.

Enhetsinstallationshanterare

SetupDiCallClassInstaller

Anropar lämplig klassinstallation och alla registrerade saminstallationsprogram med den angivna installationsbegäran.

SetupDiChangeState

Standardhanteraren för DIF_PROPERTYCHANGE begäran. Den kan användas för att ändra tillståndet för en installerad enhet.

SetupDiRegisterCoDeviceInstallers

Registrerar enhetsspecifika saminstallationer som anges i INF-filen för den angivna enheten. Den här funktionen är standardhanteraren för DIF_REGISTER_COINSTALLERS.

SetupDiInstallDevice

Standardhanteraren för DIF_INSTALLDEVICE begäran.

SetupDiInstallDriverFiles

Standardhanteraren för DIF_INSTALLDEVICEFILES begäran.

SetupDiInstallDeviceInterfaces

Standardhanteraren för DIF_INSTALLINTERFACES begäran. Den installerar de gränssnitt som anges i sektionen DDInstall.Interfaces i en enhets-INF-fil.

SetupDiMoveDuplicateDevice

Den här funktionen är föråldrad och kan inte användas i någon version av Microsoft Windows.

SetupDiRemoveDevice

Standardhanteraren för DIF_REMOVEDEVICE begäran.

SetupDiUnremoveDevice

Standardhanteraren för DIF_UNREMOVE begäran.

SetupDiRegisterDeviceInfo

Standardhanteraren för DIF_REGISTERDEVICE begäran.

SetupDiSelectDevice

Standardhanteraren för DIF_SELECTDEVICE begäran.

SetupDiSelectBestCompatDrv

Standardhanteraren för DIF_SELECTBESTCOMPATDRV begäran.

SetupDiSelectDevice

Standardhanterare för DIF_SELECTDEVICE begäran.

Anpassningsfunktioner för enhetsinstallation

SetupDiGetClassInstallParams

Hämtar klassinstallationsparametrar för en enhetsinformationsuppsättning eller ett visst enhetsinformationselement.

SetupDiSetClassInstallParams

Anger eller rensar klassinstallationsparametrar för en enhetsinformationsuppsättning eller ett visst enhetsinformationselement.

SetupDiGetDeviceInstallParams

Hämtar enhetsinstallationsparametrar för en enhetsinformationsuppsättning eller ett visst enhetsinformationselement.

SetupDiSetDeviceInstallParams

Anger enhetsinstallationsparametrar för en enhetsinformationsuppsättning eller ett visst enhetsinformationselement.

SetupDiGetDriverInstallParams

Hämtar installationsparametrar för den angivna drivrutinen.

SetupDiSetDriverInstallParams

Anger installationsparametrarna för den angivna drivrutinen.

Installera klassfunktioner

SetupDiBuildClassInfoList

Returnerar en lista över konfigurationsklass-GUID:er som innehåller varje klass som är installerad i systemet.

SetupDiBuildClassInfoListEx

Returnerar en lista över konfigurationsklass-GUID:er som innehåller varje klass som är installerad i det lokala systemet eller ett fjärrsystem.

SetupDiGetClassDescription

Hämtar den klassbeskrivning som är associerad med den angivna konfigurationsklassens GUID.

SetupDiGetClassDescriptionEx

Hämtar beskrivningen av en installationsklass som är installerad på en lokal dator eller fjärrdator.

SetupDiGetINFClass

Hämtar klassen för en angiven INF-fil för enheten.

SetupDiClassGuidsFromName

Hämtar guid:erna som är associerade med det angivna klassnamnet. Den här listan bygger på vilka klasser som för närvarande är installerade i systemet.

SetupDiClassGuidsFromNameEx

Hämtar guid:erna som är associerade med det angivna klassnamnet. Den här resulterande listan innehåller de klasser som för närvarande är installerade på en lokal dator eller fjärrdator.

SetupDiClassNameFromGuid

Hämtar klassnamnet som är associerat med klassens GUID.

SetupDiClassNameFromGuidEx

Hämtar klassnamnet som är associerat med ett klass-GUID. Klassen kan installeras på en lokal eller fjärransluten dator.

SetupDiInstallClass

Installerar avsnittet ClassInstall32 i den angivna INF-filen.

SetupDiInstallClassEx

Installerar ett klassinstallationsprogram eller en gränssnittsklass.

SetupDiOpenClassRegKey

Öppnar registernyckeln för enhetsinstallationsklassen eller en specifik undernyckel för klassen.

SetupDiOpenClassRegKeyEx

Öppnar registernyckeln för enhetsinstallationsklassen, registernyckeln för enhetsgränssnittsklassen eller en specifik undernyckel för klassen. Den här funktionen öppnar den angivna nyckeln på den lokala datorn eller på en fjärrdator.

Bitmapps- och ikonfunktioner

SetupDiGetClassImageList

Skapar en avbildningslista som innehåller bitmappar för varje installerad klass och returnerar listan i en datastruktur.

SetupDiGetClassImageListEx

Skapar en avbildningslista med bitmappar för varje klass som är installerad på en lokal eller fjärransluten dator.

SetupDiGetClassImageIndex

Hämtar indexet i klassbildlistan för en angiven klass.

SetupDiGetClassBitmapIndex

Hämtar indexet för miniikonen som angetts för den angivna klassen.

SetupDiDrawMiniIcon

Ritar den angivna miniikonen på den begärda platsen.

SetupDiLoadClassIcon

Läser in både den stora ikonen och miniikonen för den angivna klassen.

SetupDiLoadDeviceIcon

Läser in en enhetsikon för en angiven enhet. (Windows Vista och senare versioner av Windows)

SetupDiDestroyClassImageList

Förstör en klassbildlista.

Funktioner för enhetsgränssnitt

Anmärkning

SetupApi stöds inte i alla utgåvor av Windows. När det är möjligt bör du använda API:er på lägre nivå, till exempel de som är tillgängliga via CfgMgr32.dll. Se Portning från SetupApi till CfgMgr32 för tips.

SetupDiCreateDeviceInterface

Registrerar enhetsfunktioner (ett enhetsgränssnitt) för en enhet.

SetupDiOpenDeviceInterface

Hämtar information om ett befintligt enhetsgränssnitt och lägger till den i den angivna enhetsinformationsuppsättningen.

SetupDiGetDeviceInterfaceAlias

Returnerar ett alias för det angivna enhetsgränssnittet.

SetupDiGetClassDevs

Returnerar en enhetsinformationsuppsättning som innehåller alla enheter i en angiven klass.

SetupDiGetClassDevsEx

Returnerar en enhetsinformationsuppsättning som innehåller alla enheter i en angiven klass på en lokal eller fjärransluten dator.

SetupDiEnumDeviceInterfaces

Returnerar en kontextstruktur för ett enhetsgränssnittselement i en enhetsinformationsuppsättning. Varje anrop returnerar information om ett enhetsgränssnitt.

Funktionen kan anropas upprepade gånger för att hämta information om flera gränssnitt som exponeras av en eller flera enheter.

SetupDiGetDeviceInterfaceDetail

Returnerar information om ett visst enhetsgränssnitt.

SetupDiCreateDeviceInterfaceRegKey

Skapar en registreringsundernyckel för att lagra information om en enhetsgränssnittsinstans och returnerar ett handtag för nyckeln.

SetupDiOpenDeviceInterfaceRegKey

Öppnar registerundernyckeln som används av program och drivrutiner för att lagra information som är specifik för en instans av enhetsgränssnittet och returnerar ett handtag till nyckeln.

SetupDiDeleteDeviceInterfaceRegKey

Tar bort registerundernyckeln som användes av program och drivrutiner för att lagra information som är specifik för en instans av enhetsgränssnittet.

SetupDiInstallDeviceInterfaces

Är standardhanteraren för DIF_INSTALLINTERFACES begäran. Den installerar de gränssnitt som listas i avsnittet DDInstall.Interfaces i en INF-fil för enhet.

SetupDiRemoveDeviceInterface

Tar bort ett registrerat enhetsgränssnitt från systemet.

SetupDiDeleteDeviceInterfaceData

Tar bort ett enhetsgränssnitt från en enhetsinformationsuppsättning.

SetupDiSetDeviceInterfaceDefault

Anger ett angivet enhetsgränssnitt som standardgränssnitt för en enhetsklass.

SetupDiInstallClassEx

Installerar ett klassinstallationsprogram eller en gränssnittsklass.

SetupDiOpenClassRegKeyEx

Öppnar registernyckeln för enhetsinstallationsklassen , registernyckeln för enhetsgränssnittsklassen eller en specifik undernyckel för klassen. Den här funktionen öppnar den angivna nyckeln på den lokala datorn eller på en fjärrdator.

Enhetsegenskapsfunktioner (Windows Vista och senare)

Anmärkning

SetupApi stöds inte i alla utgåvor av Windows. När det är möjligt bör du använda API:er på lägre nivå, till exempel de som är tillgängliga via CfgMgr32.dll. Se Portning från SetupApi till CfgMgr32 för tips.

SetupDiGetClassProperty

Hämtar en enhetsegenskap som har angetts för en enhetskonfigurationsklass eller en enhetsgränssnittsklass.

SetupDiGetClassPropertyEx

Hämtar en klassegenskap för en enhetsinstallationsklass eller en enhetsgränssnittsklass på en lokal dator eller fjärrdator.

SetupDiGetClassPropertyKeys

Hämtar en matris med enhetsegenskapsnycklarna som representerar de enhetsegenskaper som har angetts för en enhetskonfigurationsklass eller en enhetsgränssnittsklass.

SetupDiGetClassPropertyKeysEx

Hämtar en matris med enhetsegenskapsnycklarna som representerar de enhetsegenskaper som har angetts för en enhetsinstallationsklass eller en enhetsgränssnittsklass på en lokal eller en fjärrdator.

SetupDiGetDeviceInterfaceProperty

Hämtar en enhetsegenskap som har angetts för ett enhetsgränssnitt.

SetupDiGetDeviceInterfacePropertyKeys

Hämtar en matris med enhetsegenskapsnycklar som representerar de enhetsegenskaper som har angetts för ett enhetsgränssnitt.

SetupDiGetDeviceProperty

Hämtar en enhetsinstansegenskap.

SetupDiGetDevicePropertyKeys

Hämtar en matris med enhetsegenskapsnycklarna som representerar de enhetsegenskaper som har angetts för en enhetsinstans.

SetupDiSetClassProperty

Anger en klassegenskap för en enhetsinstallationsklass eller en enhetsgränssnittsklass.

SetupDiSetClassPropertyEx

Anger en enhetsegenskap för en enhetskonfigurationsklass eller en enhetsgränssnittsklass på en lokal eller fjärransluten dator.

SetupDiSetDeviceInterfaceProperty

Anger en enhetsegenskap för ett enhetsgränssnitt.

SetupDiSetDeviceProperty

Ställer in enhetsinstansegenskapens värde.

Registerfunktioner

Anmärkning

SetupApi stöds inte i alla utgåvor av Windows. När det är möjligt bör du använda API:er på lägre nivå, till exempel de som är tillgängliga via CfgMgr32.dll. Se Portning från SetupApi till CfgMgr32 för tips.

SetupDiCreateDevRegKey

Skapar en lagringsnyckel i registret för enhetsspecifik konfigurationsinformation och returnerar ett handtag till nyckeln.

SetupDiOpenDevRegKey

Öppnar en registernyckel för enhetsspecifik konfigurationsinformation och returnerar en referens till nyckeln.

SetupDiDeleteDevRegKey

Tar bort de angivna användartillgängliga registernycklarna som är associerade med ett enhetsinformationselement.

SetupDiOpenClassRegKey

Öppnar registernyckeln för installationsklassen eller en specifik undernyckel för klassen.

SetupDiOpenClassRegKeyEx

Öppnar registernyckeln för enhetsinstallationsklassen, registernyckeln för enhetsgränssnittsklassen eller en specifik undernyckel för klassen.

Den här funktionen öppnar den angivna nyckeln på den lokala datorn eller på en fjärrdator.

SetupDiCreateDeviceInterfaceRegKey

Skapar en registerundernyckel som inte ärvolatil för lagring av information om en instans av enhetsgränssnittet och returnerar ett handtag till nyckeln.

SetupDiOpenDeviceInterfaceRegKey

Öppnar registerundernyckeln som används av program och drivrutiner för att lagra information som är specifik för en instans av enhetsgränssnittet och returnerar ett handtag till nyckeln.

SetupDiDeleteDeviceInterfaceRegKey

Tar bort registerundernyckeln som användes av program och drivrutiner för att lagra information som är specifik för en instans av enhetsgränssnittet.

SetupDiSetDeviceRegistryProperty

Anger den angivna egenskapen Plug and Play-enhet.

SetupDiGetDeviceRegistryProperty

Hämtar egenskapen för den angivna Plug and Play-enheten.

SetupDiGetClassRegistryProperty

Hämtar en angiven enhetsklassegenskap från registret.

SetupDiSetClassRegistryProperty

Anger en angiven enhetsklassegenskap i registret.

Andra funktioner

SetupDiGetActualModelsSection

Hämtar den lämpliga dekorerade INF-modellsektionen för att använda när du installerar en enhet från en enhets- INF-fil.

SetupDiGetActualSectionToInstall

Hämtar lämpligt DDInstall-avsnitt som ska användas när du installerar en enhet från en INF-enhetsfil.

SetupDiGetActualSectionToInstallEx

Hämtar namnet på avsnittet INF DDInstall som installerar en enhet för ett angivet operativsystem och processorarkitektur.

SetupDiGetHwProfileFriendlyName

Hämtar det vänliga namnet som är associerat med ett maskinvaruprofil-ID.

SetupDiGetHwProfileFriendlyNameEx

Hämtar det vänliga namnet som är associerat med ett maskinvaruprofil-ID på en lokal eller fjärransluten dator.

SetupDiGetHwProfileList

Hämtar en lista över alla nuvarande definierade maskinvaruprofil-ID:er.

SetupDiGetHwProfileListEx

Hämtar en lista över alla för närvarande definierade maskinvaruprofil-ID:t på en lokal eller fjärransluten dator.

SetupDiRestartDevices

Startar om en angiven enhet eller startar vid behov alla enheter som drivs av samma funktion och filtrerar drivrutiner som den angivna enheten.