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

  • Verarbeiten von DIF-Codes.

  • Verwalten von Geräteinformationssätzen

  • Verwalten von Treiberlisten

  • Verwalten von Geräteschnittstellen

  • Verwalten von Symbolen und anderen Bitmaps

Die folgenden Tabellen enthalten Zusammenfassungen der folgenden Funktionstypen:

Treiberinstallationsfunktionen

Geräteinformationsfunktionen

Treiberinformationsfunktionen

Geräteinstallationshandler

Anpassungsfunktionen für die Geräteinstallation

Einrichten von Klassenfunktionen

Bitmap- und Symbolfunktionen

Geräteschnittstellenfunktionen

Geräteeigenschaftenfunktionen (Windows Vista und höher)

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 höhere Versionen von Windows)

DiUninstallDevice

Deinstalliert ein Gerät und entfernt seinen Geräteknoten (devnode) aus dem System. (Windows 7 und höhere Versionen von Windows)

DiInstallDriver

Installiert ein Treiberpaket im Treiberspeicher vor und installiert dann das Treiberpaket auf übereinstimmenden PnP-Geräten, die im System vorhanden sind. (Windows Vista und höhere Versionen von Windows)

DiUninstallDriver

Entfernt ein Treiberpaket aus dem Treiberspeicher. (Windows 10 Version 1703 und höher von Windows)

UpdateDriverForPlugAndPlayGeräte

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

DiRollbackDriver

Rollback des Treiberpakets, das auf einem angegebenen Gerät installiert ist, in das Sicherungstreiberpaket, das für das Gerät festgelegt ist. (Windows Vista und höhere Versionen von Windows)

Geräteinformationsfunktionen

Hinweis

SetupApi wird nicht in allen Editionen von Windows unterstützt. Wenn möglich, sollten Sie APIs auf niedrigerer Ebene verwenden, z. B . apIs, die überCfgMgr32.dllverfügbar sind. Tipps finden Sie unter Portieren von SetupApi zu CfgMgr32 .

SetupDiCreateDeviceInfoList

Erstellt einen leeren Geräteinformationssatz. Dieser Satz kann einer Klassen-GUID zugeordnet werden.

SetupDiCreateDeviceInfoListEx

Erstellt einen leeren Geräteinformationssatz. Dieser Satz 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 einem vorhandenen Gerät instance 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äte-instance-ID ab, die einem Geräteinformationselement zugeordnet ist.

SetupDiGetDeviceInfoListClass

Ruft die Klassen-GUID ab, die einem Geräteinformationssatz zugeordnet ist, wenn sie über eine zugeordnete Klasse verfügt.

SetupDiGetDeviceInfoListDetail

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

SetupDiGetClassDevPropertySheets

Ruft Handles für die Eigenschaftenblätter eines angegebenen Geräteinformationselements oder der Geräteeinrichtungsklasse 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 fest, dass das angegebene Geräteinformationselement das derzeit ausgewählte Element eines Geräteinformationssatzes ist. 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 ein neu erstelltes Gerät instance beim Plug & Play-Manager.

SetupDiDeleteDeviceInfo

Löscht ein Element aus dem angegebenen Geräteinformationssatz. Diese Funktion löscht das tatsächliche Gerät nicht.

SetupDiDestroyDeviceInfoList

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

Treiberinformationsfunktionen

SetupDiBuildDriverInfoList

Erstellt eine Liste der Treiber, die einem angegebenen Geräte instance 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 den angegebenen Member einer Treiberliste als aktuell ausgewählten Treiber fest. Es kann auch verwendet werden, um die Treiberliste zurückzusetzen, sodass kein derzeit ausgewählter Treiber vorhanden ist.

SetupDiGetSelectedDriver

Ruft das Mitglied einer Treiberliste ab, das als zu installierende 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 den entsprechenden Klasseninstaller und alle registrierten Co-Installer mit der angegebenen Installationsanforderung auf.

SetupDiChangeState

Der Standardhandler für die DIF_PROPERTYCHANGE-Anforderung. 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 aufgeführt sind. Abschnitt "Schnittstellen " einer INF-Datei des Geräts.

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

Standardhandler für die DIF_SELECTDEVICE-Anforderung.

Anpassungsfunktionen für die 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.

Einrichten von Klassenfunktionen

SetupDiBuildClassInfoList

Gibt eine Liste der SETUP-Klassen-GUIDs zurück, die alle auf dem System installierten Klassen enthält.

SetupDiBuildClassInfoListEx

Gibt eine Liste der Setupklassen-GUIDs zurück, die jede Klasse enthält, die auf dem lokalen System oder einem Remotesystem installiert ist.

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 Abschnitt ClassInstall32 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 Schlü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 gibt die Liste in einer Datenstruktur zurück.

SetupDiGetClassImageListEx

Erstellt eine Imageliste mit Bitmaps für jede Klasse, die auf einem lokalen oder Remotecomputer installiert ist.

SetupDiGetClassImageIndex

Ruft den Index in der Klassenbildliste einer angegebenen Klasse ab.

SetupDiGetClassBitmapIndex

Ruft den Index des Minisymbols ab, das für die angegebene Klasse bereitgestellt wird.

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 höhere Versionen von Windows)

SetupDiDestroyClassImageList

Zerstört eine Klassenbildliste.

Geräteschnittstellenfunktionen

Hinweis

SetupApi wird nicht in allen Editionen von Windows unterstützt. Wenn möglich, sollten Sie APIs auf niedrigerer Ebene verwenden, z. B . apIs, die überCfgMgr32.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 zu erhalten, 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äteschnittstelle instance und gibt ein Handle an den Schlüssel zurück.

SetupDiOpenDeviceInterfaceRegKey

Öffnet den Registrierungsunterschlüssel, der von Anwendungen und Treibern zum Speichern von Informationen verwendet wird, die speziell für eine Geräteschnittstelle instance 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 spezifisch für eine Geräteschnittstelle instance sind.

SetupDiInstallDeviceInterfaces

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

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 Schlüssel auf dem lokalen Computer oder auf einem Remotecomputer.

Geräteeigenschaftenfunktionen (Windows Vista und höher)

Hinweis

SetupApi wird nicht in allen Editionen von Windows unterstützt. Wenn möglich, sollten Sie APIs auf niedrigerer Ebene verwenden, z. B . apIs, die überCfgMgr32.dllverfügbar sind. Tipps finden Sie unter Portieren von SetupApi zu CfgMgr32 .

SetupDiGetClassProperty

Ruft eine Geräteeigenschaft ab, die für eine Gerätesetupklasse 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äteeigenschaftenschlüsseln ab, die die Geräteeigenschaften darstellen, die für eine Geräteschnittstelle festgelegt sind.

SetupDiGetDeviceProperty

Ruft ein Gerät instance-Eigenschaft ab.

SetupDiGetDevicePropertyKeys

Ruft ein Array der Geräteeigenschaftenschlüssel ab, die die Geräteeigenschaften darstellen, die für ein Gerät instance 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ätesetupklasse oder eine Geräteschnittstellenklasse auf einem lokalen oder Remotecomputer fest.

SetupDiSetDeviceInterfaceProperty

Legt eine Geräteeigenschaft einer Geräteschnittstelle fest.

SetupDiSetDeviceProperty

Legt ein Gerät instance-Eigenschaft fest.

Registrierungsfunktionen

Hinweis

SetupApi wird nicht in allen Editionen von Windows unterstützt. Wenn möglich, sollten Sie APIs auf niedrigerer Ebene verwenden, z. B . apIs, die überCfgMgr32.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 an 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 die angegebenen Registrierungsschlüssel, auf die benutzerseitig zugegriffen werden kann(n), die einem Geräteinformationselement zugeordnet 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 Schlüssel auf dem lokalen Computer oder auf einem Remotecomputer.

SetupDiCreateDeviceInterfaceRegKey

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

SetupDiOpenDeviceInterfaceRegKey

Öffnet den Registrierungsunterschlüssel, der von Anwendungen und Treibern zum Speichern von Informationen verwendet wird, die speziell für eine Geräteschnittstelle instance 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 spezifisch für eine Geräteschnittstelle instance 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-Inf-Modellen-Abschnitt ab, der bei der Installation eines Geräts aus einer INF-Datei des Geräts verwendet werden soll.

SetupDiGetActualSectionToInstall

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

SetupDiGetActualSectionToInstallEx

Ruft den Namen des Abschnitts INF DDInstall ab, in dem ein Gerät für ein angegebenes Betriebssystem und eine angegebene Prozessorarchitektur installiert wird.

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 derzeit definierten Hardwareprofil-IDs ab.

SetupDiGetHwProfileListEx

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

SetupDiRestartDevices

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