funzione CM_Reenumerate_DevNode (cfgmgr32.h)
La funzione CM_Reenumerate_DevNode enumera i dispositivi identificati da un nodo del dispositivo specificato e da tutti i relativi elementi figlio.
Sintassi
CMAPI CONFIGRET CM_Reenumerate_DevNode(
[in] DEVINST dnDevInst,
[in] ULONG ulFlags
);
Parametri
[in] dnDevInst
Handle dell'istanza del dispositivo fornita dal chiamante associato al computer locale.
[in] ulFlags
Flag forniti dal chiamante che specificano il modo in cui deve verificarsi la rinumerazione. Questo parametro può essere impostato su una combinazione dei flag seguenti, come indicato:
CM_REENUMERATE_ASYNCHRONOUS
La rinumerazione deve essere eseguita in modo asincrono. La chiamata a questa funzione viene restituita immediatamente dopo che il gestore PnP riceve la richiesta di riesenumerazione. Se questo flag è impostato, non deve essere impostato anche il flag CM_REENUMERATE_SYNCHRONOUS.
CM_REENUMERATE_NORMAL
Specifica il comportamento di riesenumerazione predefinito, in cui la rinumerazione viene eseguita in modo sincrono. Questo flag è funzionalmente equivalente a CM_REENUMERATE_SYNCHRONOUS.
CM_REENUMERATE_RETRY_INSTALLATION
Specifica che Plug and Play deve eseguire un altro tentativo di installare tutti i dispositivi nel sottoalbero specificato che sono stati rilevati ma che non sono ancora configurati o contrassegnati come necessari per la reinstallazione o per il quale è necessario completare l'installazione. Questo flag può essere impostato insieme al flag CM_REENUMERATE_SYNCHRONOUS o al flag CM_REENUMERATE_ASYNCHRONOUS.
Questo flag deve essere usato con estrema cautela, perché il gestore PnP può richiedere all'utente di eseguire l'installazione di tali dispositivi. Attualmente, solo componenti come 设备管理器 e Configurazione guidata hardware usano questo flag, per consentire all'utente di ritentare l'installazione dei dispositivi che potrebbero essere già stati rilevati ma che non sono attualmente installati.
CM_REENUMERATE_SYNCHRONOUS
La rinumerazione deve essere eseguita in modo sincrono. La chiamata a questa funzione restituisce quando tutti i dispositivi nel sottoalbero specificato sono stati rinumerati. Se questo flag è impostato, il flag di CM_REENUMERATE_ASYNCHRONOUS non deve essere impostato. Questo flag è funzionalmente equivalente a CM_REENUMERATE_NORMAL.
Valore restituito
Se l'operazione ha esito positivo, la funzione restituisce CR_SUCCESS. In caso contrario, restituisce uno dei codici di errore con prefisso CR_ definiti in Cfgmgr32.h.
Commenti
Se il nodo del dispositivo specificato rappresenta un dispositivo hardware o software bus, il gestore PnP esegue una query sui driver del dispositivo per un elenco di elementi figlio, tenta di configurare e avviare tutti i dispositivi figlio non configurati in precedenza. Il gestore PnP avvia anche la rimozione a sorpresa dei dispositivi che non sono più presenti (vedere IRP_MN_SURPRISE_REMOVAL).
I chiamanti di questa funzione devono avere SeLoadDriverPrivilege. I privilegi sono descritti nella documentazione di Microsoft Windows SDK.
Per informazioni sull'uso di handle di istanza del dispositivo associati al computer locale, vedere CM_Get_Child.
Requisiti
Client minimo supportato | Disponibile in Microsoft Windows 2000 e versioni successive di Windows. |
Piattaforma di destinazione | Desktop |
Intestazione | cfgmgr32.h (include Cfgmgr32.h) |
Libreria | Cfgmgr32.lib |
DLL | Cfgmgr32.dll |