CM_Reenumerate_DevNode_Ex-Funktion (cfgmgr32.h)

[Ab Windows 8 und Windows Server 2012 ist diese Funktion veraltet. Verwenden Sie stattdessen CM_Reenumerate_DevNode .]

Die CM_Reenumerate_DevNode_Ex-Funktion listet die Geräte auf, die von einem angegebenen Geräteknoten und allen untergeordneten Elementen identifiziert werden.

Syntax

CMAPI CONFIGRET CM_Reenumerate_DevNode_Ex(
  [in]           DEVINST  dnDevInst,
  [in]           ULONG    ulFlags,
  [in, optional] HMACHINE hMachine
);

Parameter

[in] dnDevInst

Vom Aufrufer bereitgestelltes Gerät instance Handle, das an das von hMachine bereitgestellte Maschinenhandle gebunden ist.

[in] ulFlags

Vom Aufrufer bereitgestellte Flags, die angeben, wie eine erneute Aufzählung erfolgen soll. Dieser Parameter kann wie bereits erwähnt auf eine Kombination der folgenden Flags festgelegt werden:

CM_REENUMERATE_ASYNCHRONOUS

Die Erneute Aufzählung sollte asynchron erfolgen. Der Aufruf dieser Funktion wird unmittelbar nach dem Empfang der Erneutumsetzungsanforderung durch den PnP-Manager zurückgegeben. Wenn dieses Flag festgelegt ist, sollte nicht auch das CM_REENUMERATE_SYNCHRONOUS-Flag festgelegt werden.

CM_REENUMERATE_NORMAL

Gibt das Standardverhalten der Erneutumerierung an, bei dem die Reenumeration synchron erfolgt. Dieses Flag entspricht derzeit CM_REENUMERATE_SYNCHRONOUS.

CM_REENUMERATE_RETRY_INSTALLATION

Gibt an, dass Plug & Play einen weiteren Versuch unternehmen sollen, alle Geräte in der angegebenen Unterstruktur zu installieren, die erkannt, aber noch nicht konfiguriert wurden oder als neu installiert markiert sind oder für die die Installation abgeschlossen werden muss. Dieses Flag kann zusammen mit dem CM_REENUMERATE_SYNCHRONOUS-Flag oder dem CM_REENUMERATE_ASYNCHRONOUS-Flag festgelegt werden.

Dieses Flag muss mit äußerster Vorsicht verwendet werden, da es dazu führen kann, dass der PnP-Manager den Benutzer auffordert, die Installation solcher Geräte durchzuführen. Derzeit verwenden nur Komponenten wie Geräte-Manager und Hardware-Assistent dieses Flag, damit der Benutzer die Installation von Geräten wiederholen kann, die möglicherweise bereits erkannt, aber derzeit nicht installiert sind.

CM_REENUMERATE_SYNCHRONOUS

Die Erneute Aufzählung sollte synchron erfolgen. Der Aufruf dieser Funktion gibt zurück, wenn alle Geräte in der angegebenen Unterstruktur neu aufgezählt wurden. Wenn dieses Flag festgelegt ist, sollte nicht auch das CM_REENUMERATE_ASYNCHRONOUS-Flag festgelegt werden. Dieses Flag entspricht derzeit CM_REENUMERATE_NORMAL.

[in, optional] hMachine

Vom Aufrufer bereitgestelltes Computerhandle, an das das vom Aufrufer bereitgestellte Gerät instance Handle gebunden ist.

Hinweis Die Verwendung dieser Funktion für den Zugriff auf Remotecomputer wird ab Windows 8 und Windows Server 2012 nicht unterstützt, da diese Funktionalität entfernt wurde.
 

Rückgabewert

Wenn der Vorgang erfolgreich ist, gibt die Funktion CR_SUCCESS zurück. Andernfalls wird einer der in Cfgmgr32.h definierten Fehlercodes mit CR_ Präfix zurückgegeben.

Hinweise

Wenn der angegebene Geräteknoten ein Hardware- oder Softwarebusgerät darstellt, fragt der PnP-Manager die Gerätetreiber nach einer Liste der untergeordneten Geräte ab und versucht dann, alle untergeordneten Geräte zu konfigurieren und zu starten, die zuvor nicht konfiguriert wurden. Der PnP-Manager initiiert auch die überraschende Entfernung von Geräten, die nicht mehr vorhanden sind (siehe IRP_MN_SURPRISE_REMOVAL).

Aufrufer dieser Funktion müssen über SeLoadDriverPrivilege verfügen. (Berechtigungen werden in der dokumentation Microsoft Windows SDK beschrieben.)

Informationen zur Verwendung von Geräte- instance Handles, die an einen lokalen oder Remotecomputer gebunden sind, finden Sie unter CM_Get_Child_Ex.

Die Funktionalität für den Zugriff auf Remotecomputer wurde in Windows 8 und Windows Server 2012 und späteren Betriebssystemen entfernt, sodass Sie nicht auf Remotecomputer zugreifen können, wenn Sie unter diesen Versionen von Windows ausgeführt werden.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar in Microsoft Windows 2000 und höheren Versionen von Windows.
Zielplattform Desktop
Kopfzeile cfgmgr32.h (include Cfgmgr32.h)
Bibliothek Cfgmgr32.lib
DLL Cfgmgr32.dll

Weitere Informationen

CM_Get_Child_Ex

CM_Reenumerate_DevNode