Verwenden von Geräteinstallationsfunktionen

In diesem Abschnitt werden die Geräteinstallationsfunktionen zusammengefasst. Mithilfe der Geräteinstallationsfunktionen kann die Installationssoftware die folgenden Arten von Vorgängen ausführen:

  • Installieren von Treibern

  • Behandeln Sie DIF-Codes.

  • Verwalten von Geräteinformationssätzen.

  • Treiberlisten verwalten.

  • Geräteschnittstellen verwalten.

  • Verwalten Sie Symbole und andere Bitmaps.

Die folgenden Tabellen enthalten Zusammenfassungen der folgenden Funktionstypen:

Treiberinstallationsfunktionen

Geräteinformationsfunktionen

Treiberinformationsfunktionen

Geräteinstallationshandler

Anpassungsfunktionen der Geräteinstallation

Einrichtungsfunktionen für Klassen

Bitmap- und Symbolfunktionen

Geräteschnittstellenfunktionen

Funktionen für Geräteeigenschaften (Windows Vista und höheren Versionen)

Registrierungsfunktionen

Andere Funktionen

Treiberinstallationsfunktionen

DiInstallDevice

Installiert ein angegebenes Treiberpaket, das im Treiberspeicher auf einem PnP-Gerät vorinstalliert ist, das im System vorhanden ist. (Windows Vista und spätere Versionen von Windows)

DiUninstallDevice

Deinstalliert ein Gerät und entfernt seinen Geräteknoten (Devnode) aus dem System. (Windows 7 und spätere Versionen von Windows)

DiInstallDriver

Vorinstalliert ein Treiberpaket im Treiberspeicher und installiert dann das Treiberpaket auf übereinstimmenden PnP-Geräten, die im System vorhanden sind. (Windows Vista und spätere Versionen von Windows)

DiUninstallDriver

Entfernt ein Treiberpaket aus dem Treiberspeicher. (Windows 10 Version 1703 und neuere Versionen von Windows)

UpdateDriverForPlugAndPlayDevices

Aktualisiert das Treiberpaket, das für übereinstimmende PnP-Geräte installiert ist, die im System vorhanden sind.

DiRollbackDriver

Setzt das Treiberpaket, das auf einem angegebenen Gerät installiert ist, auf das Sicherungstreiberpaket für das Gerät zurück. (Windows Vista und spätere Versionen von Windows)

Geräteinformationsfunktionen

Note

SetupApi wird nicht auf allen Windows-Editionen unterstützt. Wenn möglich, sollten Sie APIs der unteren Ebene verwenden, z. B. solche, die über CfgMgr32.dllverfügbar sind. Tipps finden Sie unter Portieren von SetupApi zu CfgMgr32 .

SetupDiCreateDeviceInfoList

Erstellt einen leeren Geräteinformationssatz. Diese Menge kann einer Klassen-GUID zugeordnet werden.

SetupDiCreateDeviceInfoListEx

Erstellt einen leeren Geräteinformationssatz. Dieses Set kann einer Klassen-GUID zugeordnet werden und kann für Geräte auf einem Remotecomputer verwendet werden.

SetupDiCreateDeviceInfo

Erstellt ein neues Geräteinformationselement und fügt es dem angegebenen Geräteinformationssatz als neues Element hinzu.

SetupDiOpenDeviceInfo

Ruft Informationen zu einer vorhandenen Geräteinstanz ab und fügt sie dem angegebenen Geräteinformationssatz hinzu.

SetupDiEnumDeviceInfo

Gibt eine Kontextstruktur für ein Geräteinformationselement eines Geräteinformationssatzes zurück.

SetupDiGetDeviceInstanceId

Ruft die Geräteinstanz-ID ab, die einem Geräteinformationselement zugeordnet ist.

SetupDiGetDeviceInfoListClass

Ruft die Klassen-GUID ab, die einem Geräteinformationssatz zugeordnet ist, wenn diesem eine Klasse zugeordnet ist.

SetupDiGetDeviceInfoListDetail

Ruft Informationen ab, die einem Geräteinformationssatz zugeordnet sind, einschließlich der Klassen-GUID, des Remotecomputerhandle und des Remotecomputernamens.

SetupDiGetClassDevPropertySheets

Ruft Handles zu den Eigenschaftenblättern eines angegebenen Geräteinformationselements oder der Geräteinstallationsklasse eines angegebenen Geräteinformationssatzes ab.

SetupDiGetClassDevs

Gibt einen Geräteinformationssatz zurück, der alle Geräte einer angegebenen Klasse enthält.

SetupDiGetClassDevsEx

Gibt einen Geräteinformationssatz zurück, der alle Geräte einer angegebenen Klasse auf einem lokalen oder Remotecomputer enthält.

SetupDiSetSelectedDevice

Legt das angegebene Geräteinformationselement als das aktuell ausgewählte Element eines Geräteinformationssatzes fest. Diese Funktion wird in der Regel von einem Installations-Assistenten verwendet.

SetupDiGetSelectedDevice

Ruft das aktuell ausgewählte Gerät für den angegebenen Geräteinformationssatz ab.

SetupDiRegisterDeviceInfo

Registriert eine neu erstellte Geräteinstanz beim Plug & Play-Manager.

SetupDiDeleteDeviceInfo

Löscht ein Mitglied aus dem angegebenen Geräteinformationssatz. Diese Funktion löscht das physische Gerät nicht.

SetupDiDestroyDeviceInfoList

Zerstört einen Geräteinformationssatz und gibt den gesamten zugeordneten Speicher frei.

Treiberinformationsfunktionen

SetupDiBuildDriverInfoList

Erstellt eine Liste der Treiber, die einer angegebenen Geräteinstanz oder der globalen Klassentreiberliste des Geräteinformationssatzes zugeordnet sind.

SetupDiEnumDriverInfo

Listet die Elemente einer Treiberinformationsliste auf.

SetupDiGetDriverInfoDetail

Ruft detaillierte Informationen für ein angegebenes Treiberinformationselement ab.

SetupDiSetSelectedDriver

Legt das angegebene Element einer Treiberliste als aktuell ausgewählten Treiber fest. Sie kann auch verwendet werden, um die Treiberliste zurückzusetzen, sodass derzeit kein Treiber ausgewählt ist.

SetupDiGetSelectedDriver

Ruft den Eintrag einer Treiberliste ab, der als zu installierender Treiber ausgewählt wurde.

SetupDiCancelDriverInfoSearch

Bricht eine Treiberlistensuche ab, die derzeit in einem anderen Thread ausgeführt wird.

SetupDiDestroyDriverInfoList

Zerstört eine Treiberinformationsliste.

Geräteinstallationshandler

SetupDiCallClassInstaller

Ruft das entsprechende Klasseninstallationsprogramm und alle registrierten Co-Installer mit der angegebenen Installationsanforderung auf.

SetupDiChangeState

Der Standard-Handler für die Anforderung DIF_PROPERTYCHANGE. Sie kann verwendet werden, um den Status eines installierten Geräts zu ändern.

SetupDiRegisterCoDeviceInstallers

Registriert die gerätespezifischen Co-Installer, die in der INF-Datei für das angegebene Gerät aufgeführt sind. Diese Funktion ist der Standardhandler für DIF_REGISTER_COINSTALLERS.

SetupDiInstallDevice

Der Standardhandler für die DIF_INSTALLDEVICE-Anforderung.

SetupDiInstallDriverFiles

Der Standardhandler für die DIF_INSTALLDEVICEFILES-Anforderung.

SetupDiInstallDeviceInterfaces

Der Standardhandler für die DIF_INSTALLINTERFACES-Anforderung. Es installiert die Schnittstellen, die in einem DDInstall.Interfaces-Abschnitt einer Geräte-INF-Datei aufgeführt sind.

SetupDiMoveDuplicateDevice

Diese Funktion ist veraltet und kann in keiner Version von Microsoft Windows verwendet werden.

SetupDiRemoveDevice

Der Standardhandler für die DIF_REMOVEDEVICE-Anforderung.

SetupDiUnremoveDevice

Der Standardhandler für die DIF_UNREMOVE-Anforderung.

SetupDiRegisterDeviceInfo

Der Standardhandler für die DIF_REGISTERDEVICE-Anforderung.

SetupDiSelectDevice

Der Standardhandler für die DIF_SELECTDEVICE-Anforderung.

SetupDiSelectBestCompatDrv

Der Standardhandler für die DIF_SELECTBESTCOMPATDRV-Anforderung.

SetupDiSelectDevice

Standard-Handler für die Anforderung DIF_SELECTDEVICE.

Anpassungsfunktionen der Geräteinstallation

SetupDiGetClassInstallParams

Ruft Klasseninstallationsparameter für einen Geräteinformationssatz oder ein bestimmtes Geräteinformationselement ab.

SetupDiSetClassInstallParams

Legt Die Klasseninstallationsparameter für einen Geräteinformationssatz oder ein bestimmtes Geräteinformationselement fest oder löscht sie.

SetupDiGetDeviceInstallParams

Ruft Geräteinstallationsparameter für einen Geräteinformationssatz oder ein bestimmtes Geräteinformationselement ab.

SetupDiSetDeviceInstallParams

Legt Geräteinstallationsparameter für einen Geräteinformationssatz oder ein bestimmtes Geräteinformationselement fest.

SetupDiGetDriverInstallParams

Ruft Installationsparameter für den angegebenen Treiber ab.

SetupDiSetDriverInstallParams

Legt die Installationsparameter für den angegebenen Treiber fest.

Klassenfunktionen einrichten

SetupDiBuildClassInfoList

Gibt eine Liste der Setupklassen-GUIDs zurück, die alle auf dem System installierten Klassen enthalten.

SetupDiBuildClassInfoListEx

Gibt eine Liste der Setupklassen-GUIDs zurück, die alle Klassen umfasst, die auf dem lokalen System oder einem Remotesystem installiert sind.

SetupDiGetClassDescription

Ruft die Klassenbeschreibung ab, die der angegebenen Setupklassen-GUID zugeordnet ist.

SetupDiGetClassDescriptionEx

Ruft die Beschreibung einer Setupklasse ab, die auf einem lokalen oder Remotecomputer installiert ist.

SetupDiGetINFClass

Ruft die Klasse einer angegebenen Geräte-INF-Datei ab.

SetupDiClassGuidsFromName

Ruft die GUIDs ab, die dem angegebenen Klassennamen zugeordnet sind. Diese Liste basiert auf den Klassen, die derzeit auf dem System installiert sind.

SetupDiClassGuidsFromNameEx

Ruft die GUIDs ab, die dem angegebenen Klassennamen zugeordnet sind. Diese resultierende Liste enthält die Klassen, die derzeit auf einem lokalen oder Remotecomputer installiert sind.

SetupDiClassNameFromGuid

Ruft den Klassennamen ab, der der Klassen-GUID zugeordnet ist.

SetupDiClassNameFromGuidEx

Ruft den Klassennamen ab, der einer Klassen-GUID zugeordnet ist. Die Klasse kann auf einem lokalen oder Remotecomputer installiert werden.

SetupDiInstallClass

Installiert den ClassInstall32-Abschnitt der angegebenen INF-Datei.

SetupDiInstallClassEx

Installiert einen Klasseninstaller oder eine Schnittstellenklasse.

SetupDiOpenClassRegKey

Öffnet den Registrierungsschlüssel der Geräteeinrichtungsklasse oder einen bestimmten Unterschlüssel der Klasse.

SetupDiOpenClassRegKeyEx

Öffnet den Registrierungsschlüssel der Geräteeinrichtungsklasse, den Registrierungsschlüssel der Geräteschnittstellenklasse oder einen bestimmten Unterschlüssel der Klasse. Diese Funktion öffnet den angegebenen Registrierungsschlüssel auf dem lokalen Computer oder auf einem Remotecomputer.

Bitmap- und Symbolfunktionen

SetupDiGetClassImageList

Erstellt eine Bildliste, die Bitmaps für jede installierte Klasse enthält und die Liste in einer Datenstruktur zurückgibt.

SetupDiGetClassImageListEx

Erstellt eine Bildliste von Bitmaps für jede Objektklasse, die auf einem lokalen oder Remotecomputer installiert ist.

SetupDiGetClassImageIndex

Ruft den Index in der Klassenbildliste einer angegebenen Klasse ab.

SetupDiGetClassBitmapIndex

Ruft den Index des für die angegebene Klasse bereitgestellten Minisymbols ab.

SetupDiDrawMiniIcon

Zeichnet das angegebene Minisymbol an der angeforderten Position.

SetupDiLoadClassIcon

Lädt sowohl das große als auch das Minisymbol für die angegebene Klasse.

SetupDiLoadDeviceIcon

Lädt ein Gerätesymbol für ein angegebenes Gerät. (Windows Vista und spätere Versionen von Windows)

SetupDiDestroyClassImageList

Zerstört eine Klassenimageliste.

Geräteschnittstellenfunktionen

Note

SetupApi wird nicht auf allen Windows-Editionen unterstützt. Wenn möglich, sollten Sie APIs der unteren Ebene verwenden, z. B. solche, die über CfgMgr32.dllverfügbar sind. Tipps finden Sie unter Portieren von SetupApi zu CfgMgr32 .

SetupDiCreateDeviceInterface

Registriert die Gerätefunktionalität (eine Geräteschnittstelle) für ein Gerät.

SetupDiOpenDeviceInterface

Ruft Informationen zu einer vorhandenen Geräteschnittstelle ab und fügt sie dem angegebenen Geräteinformationssatz hinzu.

SetupDiGetDeviceInterfaceAlias

Gibt einen Alias der angegebenen Geräteschnittstelle zurück.

SetupDiGetClassDevs

Gibt einen Geräteinformationssatz zurück, der alle Geräte einer angegebenen Klasse enthält.

SetupDiGetClassDevsEx

Gibt einen Geräteinformationssatz zurück, der alle Geräte einer angegebenen Klasse auf einem lokalen oder Remotecomputer enthält.

SetupDiEnumDeviceInterfaces

Gibt eine Kontextstruktur für ein Geräteschnittstellenelement eines Geräteinformationssatzes zurück. Jeder Aufruf gibt Informationen zu einer Geräteschnittstelle zurück.

Die Funktion kann wiederholt aufgerufen werden, um Informationen zu mehreren Schnittstellen abzurufen, die von einem oder mehreren Geräten verfügbar gemacht werden.

SetupDiGetDeviceInterfaceDetail

Gibt Details zu einer bestimmten Geräteschnittstelle zurück.

SetupDiCreateDeviceInterfaceRegKey

Erstellt einen Registrierungsunterschlüssel zum Speichern von Informationen zu einer Geräteschnittstelleninstanz und gibt ein Handle an den Schlüssel zurück.

SetupDiOpenDeviceInterfaceRegKey

Öffnet den Registrierungsunterschlüssel, der von Anwendungen und Treibern verwendet wird, um Informationen zu speichern, die für eine Geräteschnittstelleninstanz spezifisch sind, und gibt ein Handle an den Schlüssel zurück.

SetupDiDeleteDeviceInterfaceRegKey

Löscht den Registrierungsunterschlüssel, der von Anwendungen und Treibern zum Speichern von Informationen verwendet wurde, die für eine Geräteschnittstelleninstanz spezifisch sind.

SetupDiInstallDeviceInterfaces

Ist der Standardhandler für die DIF_INSTALLINTERFACES-Anforderung. Es installiert die Schnittstellen, die in einem DDInstall.Interfaces-Abschnitt einer Geräte-INF-Datei aufgeführt sind.

SetupDiRemoveDeviceInterface

Entfernt eine registrierte Geräteschnittstelle aus dem System.

SetupDiDeleteDeviceInterfaceData

Löscht eine Geräteschnittstelle aus einem Geräteinformationssatz.

SetupDiSetDeviceInterfaceDefault

Legt eine angegebene Geräteschnittstelle als Standardschnittstelle für eine Geräteklasse fest.

SetupDiInstallClassEx

Installiert einen Klasseninstaller oder eine Schnittstellenklasse.

SetupDiOpenClassRegKeyEx

Öffnet den Registrierungsschlüssel der Geräteeinrichtungsklasse , den Registrierungsschlüssel der Geräteschnittstellenklasse oder einen bestimmten Unterschlüssel der Klasse. Diese Funktion öffnet den angegebenen Registrierungsschlüssel auf dem lokalen Computer oder auf einem Remotecomputer.

Device-Eigenschaftsfunktionen (Windows Vista und höheren Versionen)

Note

SetupApi wird nicht auf allen Windows-Editionen unterstützt. Wenn möglich, sollten Sie APIs der unteren Ebene verwenden, z. B. solche, die über CfgMgr32.dllverfügbar sind. Tipps finden Sie unter Portieren von SetupApi zu CfgMgr32 .

SetupDiGetClassProperty

Ruft eine Geräteeigenschaft ab, die für eine Geräteeinrichtungsklasse oder eine Geräteschnittstellenklasse festgelegt ist.

SetupDiGetClassPropertyEx

Ruft eine Klasseneigenschaft für eine Geräteeinrichtungsklasse oder eine Geräteschnittstellenklasse auf einem lokalen oder Remotecomputer ab.

SetupDiGetClassPropertyKeys

Ruft ein Array der Geräteeigenschaftenschlüssel ab, die die Geräteeigenschaften darstellen, die für eine Geräteeinrichtungsklasse oder eine Geräteschnittstellenklasse festgelegt sind.

SetupDiGetClassPropertyKeysEx

Ruft ein Array der Geräteeigenschaftenschlüssel ab, die die Geräteeigenschaften darstellen, die für eine Geräteeinrichtungsklasse oder eine Geräteschnittstellenklasse auf einem lokalen oder Remotecomputer festgelegt sind.

SetupDiGetDeviceInterfaceProperty

Ruft eine Geräteeigenschaft ab, die für eine Geräteschnittstelle festgelegt ist.

SetupDiGetDeviceInterfacePropertyKeys

Ruft ein Array von Geräteeigenschaftsschlüsseln ab, die die Geräteeigenschaften darstellen, die für ein Gerät festgelegt sind.

SetupDiGetDeviceProperty

Ruft eine Eigenschaft einer Geräteinstanz ab.

SetupDiGetDevicePropertyKeys

Ruft ein Array der Geräteeigenschaftenschlüssel ab, die die Geräteeigenschaften darstellen, die für eine Geräteinstanz festgelegt sind.

SetupDiSetClassProperty

Legt eine Klasseneigenschaft für eine Geräteeinrichtungsklasse oder eine Geräteschnittstellenklasse fest.

SetupDiSetClassPropertyEx

Legt eine Geräteeigenschaft für eine Geräteeinrichtungsklasse oder eine Geräteschnittstellenklasse auf einem lokalen oder Remotecomputer fest.

SetupDiSetDeviceInterfaceProperty

Legt eine Geräteschnittstelleneigenschaft fest.

SetupDiSetDeviceProperty

Legt eine Geräteinstanzeigenschaft fest.

Registrierungsfunktionen

Note

SetupApi wird nicht auf allen Windows-Editionen unterstützt. Wenn möglich, sollten Sie APIs der unteren Ebene verwenden, z. B. solche, die über CfgMgr32.dllverfügbar sind. Tipps finden Sie unter Portieren von SetupApi zu CfgMgr32 .

SetupDiCreateDevRegKey

Erstellt einen Registrierungsspeicherschlüssel für gerätespezifische Konfigurationsinformationen und gibt ein Handle für den Schlüssel zurück.

SetupDiOpenDevRegKey

Öffnet einen Registrierungsspeicherschlüssel für gerätespezifische Konfigurationsinformationen und gibt ein Handle an den Schlüssel zurück.

SetupDiDeleteDevRegKey

Löscht den/die angegebenen benutzerzugänglichen Registrierungsschlüssel, der/die einem Geräteinformationselement zugeordnet ist/sind.

SetupDiOpenClassRegKey

Öffnet den Registrierungsschlüssel der Setupklasse oder einen bestimmten Unterschlüssel der Klasse.

SetupDiOpenClassRegKeyEx

Öffnet den Registrierungsschlüssel der Geräteeinrichtungsklasse, den Registrierungsschlüssel der Geräteschnittstellenklasse oder einen bestimmten Unterschlüssel der Klasse.

Diese Funktion öffnet den angegebenen Registrierungsschlüssel auf dem lokalen Computer oder auf einem Remotecomputer.

SetupDiCreateDeviceInterfaceRegKey

Erstellt einen nicht volatile Registrierungsunterschlüssel zum Speichern von Informationen zu einer Geräteschnittstelleninstanz und gibt ein Handle an den Schlüssel zurück.

SetupDiOpenDeviceInterfaceRegKey

Öffnet den Registrierungsunterschlüssel, der von Anwendungen und Treibern verwendet wird, um Informationen zu speichern, die für eine Geräteschnittstelleninstanz spezifisch sind, und gibt ein Handle für den Schlüssel zurück.

SetupDiDeleteDeviceInterfaceRegKey

Löscht den Registrierungsunterschlüssel, der von Anwendungen und Treibern zum Speichern von Informationen verwendet wurde, die für eine Geräteschnittstelleninstanz spezifisch sind.

SetupDiSetDeviceRegistryProperty

Legt die angegebene Plug & Play Geräteeigenschaft fest.

SetupDiGetDeviceRegistryProperty

Ruft die angegebene Plug & Play Geräteeigenschaft ab.

SetupDiGetClassRegistryProperty

Ruft eine angegebene Geräteklasseneigenschaft aus der Registrierung ab.

SetupDiSetClassRegistryProperty

Legt eine angegebene Geräteklasseneigenschaft in der Registrierung fest.

Andere Funktionen

SetupDiGetActualModelsSection

Ruft den entsprechenden inF Models-Abschnitt ab, der beim Installieren eines Geräts aus einer INF-Datei des Geräts verwendet werden soll.

SetupDiGetActualSectionToInstall

Ruft den entsprechenden DDInstall-Abschnitt ab, der beim Installieren eines Geräts aus einer INF-Datei des Geräts verwendet werden soll.

SetupDiGetActualSectionToInstallEx

Ruft den Namen des ABSCHNITTs INF DDInstall ab, der ein Gerät für ein angegebenes Betriebssystem und eine Prozessorarchitektur installiert.

SetupDiGetHwProfileFriendlyName

Ruft den Anzeigenamen ab, der einer Hardwareprofil-ID zugeordnet ist.

SetupDiGetHwProfileFriendlyNameEx

Ruft den Anzeigenamen ab, der einer Hardwareprofil-ID auf einem lokalen oder Remotecomputer zugeordnet ist.

SetupDiGetHwProfileList

Ruft eine Liste aller aktuell definierten Hardwareprofil-IDs ab.

SetupDiGetHwProfileListEx

Ruft eine Liste aller aktuell definierten Hardwareprofil-IDs auf einem lokalen oder Remotecomputer ab.

SetupDiRestartDevices

Startet ein angegebenes Gerät neu oder startet ggf. alle Geräte, die von denselben Funktions- und Filtertreibern wie das angegebene Gerät gesteuert werden.