Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
In Windows Vista e versioni successive di Windows, il modello di proprietà del dispositivo unificato include le proprietà delle relazioni dei dispositivi. Il modello di proprietà del dispositivo unificato usa chiavi proprietà per rappresentare queste proprietà. L'elenco delle relazioni rappresentate nel modello di proprietà dispositivo unificato è:
- DEVPKEY_Device_BusRelations
- DEVPKEY_Device_EjectionRelations
- DEVPKEY_Device_PowerRelations
- DEVPKEY_Device_RemovalRelations
- DEVPKEY_Device_Parent
- DEVPKEY_Device_Children
- DEVPKEY_Device_Siblings
Windows Server 2003, Windows XP e Windows 2000 non supportano le chiavi di proprietà del modello di proprietà unificato. Tuttavia, è possibile recuperare le informazioni corrispondenti chiamando le funzioni del Gestore di configurazione Plug and Play (PnP). Per mantenere la compatibilità con le versioni precedenti di Windows, Windows Vista e versioni successive supportano anche la chiamata delle funzioni di Gestione configurazione PnP per recuperare le proprietà delle relazioni dei dispositivi. È tuttavia consigliabile usare le chiavi delle proprietà del modello di proprietà del dispositivo unificato per accedere alle proprietà della relazione del dispositivo. Per informazioni su come usare le chiavi delle proprietà per accedere alle proprietà del driver di dispositivo, vedere Accesso alle proprietà dell'istanza del dispositivo (Windows Vista e versioni successive).
Per informazioni su come accedere alle proprietà delle relazioni dei dispositivi in Windows Server 2003, Windows XP e Windows 2000, vedere gli argomenti seguenti:
Recupero dell'elemento padre di un'istanza del dispositivo
Recuperare i figli di un'istanza del dispositivo
Recupero degli elementi di pari livello di un'istanza del dispositivo
Recupero di relazioni di espulsione, relazioni di rimozione, relazioni di potere, e relazioni del bus
Per recuperare le informazioni sulle relazioni dei dispositivi in Windows Server 2003, Windows XP e Windows 2000, chiamare CM_Get_Device_ID_List e specificare i valori dei parametri seguenti:
Imposta pszFilter su un puntatore a una stringa con terminazione NULL che specifica l'identificatore dell'istanza del dispositivo per il quale recuperare le informazioni sulle relazioni.
Impostare buffer su un puntatore a un buffer che riceve un elenco di identificatori di istanza del dispositivo con terminazione NULL. L'elenco viene terminato da un carattere NULL aggiuntivo. È possibile ottenere le dimensioni del buffer necessarie chiamando la funzione CM_Get_Device_ID_List_Size.
Impostare BufferLen sulla dimensione, in caratteri, del buffer .
Impostare ulFlags su uno dei flag seguenti per recuperare le informazioni sulle relazioni corrispondenti:
CM_GETIDLIST_FILTER_EJECTIONRELATIONS
Il flag CM_GETIDLIST_FILTER_EJECTIONRELATIONS recupera relazioni di eiettazione, ovvero le stesse informazioni fornite dalla proprietà del dispositivo DEVPKEY_Device_EjectionRelations in Windows Vista e versioni successive.
CM_GETIDLIST_FILTER_REMOVALRELATIONS
Il flag CM_GETIDLIST_FILTER_REMOVALRELATIONS recupera relazioni di rimozione, ovvero le stesse informazioni fornite dalla proprietà del dispositivo DEVPKEY_Device_RemovalRelations in Windows Vista e versioni successive.
CM_GETIDLIST_FILTER_POWERRELATIONS
Il flag CM_GETIDLIST_FILTER_POWERRELATIONS recupera le relazioni di alimentazione, ovvero le stesse informazioni fornite dalla proprietà del dispositivo DEVPKEY_Device_PowerRelations in Windows Vista e versioni successive.
CM_GETIDLIST_FILTER_BUSRELATIONS
Il flag CM_GETIDLIST_FILTER_BUSRELATIONS recupera relazioni tra bus, ovvero le stesse informazioni fornite dalla proprietà del dispositivo DEVPKEY_Device_BusRelations in Windows Vista e versioni successive.
Se la chiamata a CM_Get_Device_ID_List ha esito positivo, CM_Get_Device_ID_List recupera le informazioni sulle relazioni richieste e restituisce CR_SUCCESS. In caso contrario, CM_Get_Device_ID_List restituisce uno dei codici di errore con prefisso "CR_" definito in Cfgmgr32.h.
Recupero dell'elemento padre di un'istanza del dispositivo
Per recuperare l'identificatore dell'istanza del dispositivo di un dispositivo padre in Windows Server 2003, Windows XP e Windows 2000, seguire questa procedura:
Chiamare la funzione CM_Get_Parent per recuperare un handle di istanza del dispositivo al dispositivo padre di un'istanza del dispositivo.
Chiamare CM_Get_Device_ID per recuperare l'identificatore dell'istanza del dispositivo, che è associato all'handle dell'istanza del dispositivo padre, recuperato dalla chiamata precedente a CM_Get_Parent.
Queste informazioni recuperate utilizzando questa procedura sono le stesse rappresentate dalla proprietà DEVPKEY_Device_Parent nel modello unificato di proprietà del dispositivo di Windows Vista e versioni successive.
Recupero dei figli di un'istanza del dispositivo
Per recuperare gli identificatori di istanza dei dispositivi figlio di un'istanza di dispositivo in Windows Server 2003, Windows XP e Windows 2000, seguire questa procedura:
Chiamare la funzione CM_Get_Child per recuperare un handle di istanza del dispositivo al primo dispositivo figlio associato a un'istanza del dispositivo.
Chiamare CM_Get_Sibling tante volte quante necessarie per enumerare tutti i dispositivi fratelli del primo dispositivo figlio recuperato dalla chiamata a CM_Get_Child.
Chiamare CM_Get_Device_ID per recuperare gli identificatori dell'istanza del dispositivo associati agli handle dell'istanza del dispositivo restituiti dalle chiamate a CM_Get_Child e CM_Get_Sibling.
Queste informazioni recuperate utilizzando questa procedura sono le stesse rappresentate dalla proprietà DEVPKEY_Device_Children nel modello unificato di proprietà del dispositivo di Windows Vista e versioni successive.
Ottenimento dei fratelli di un'istanza del dispositivo
Per recuperare gli identificatori di istanza dei dispositivi collegati all'istanza di dispositivo Abc in Windows Server 2003, Windows XP e Windows 2000, seguire questa procedura:
Chiamare la funzione CM_Get_Parent per ottenere un handle dell'istanza di dispositivo per il dispositivo padre dell'istanza di dispositivo Abc.
Chiamare la funzione CM_Get_Child per recuperare un handle di istanza del dispositivo per il primo dispositivo figlio del dispositivo padre relativo all'istanza del dispositivo Abc.
Chiamare CM_Get_Sibling tutte le volte necessarie per enumerare tutti i dispositivi di pari livello del primo dispositivo figlio del dispositivo padre. Questa enumerazione restituirà anche un handle all'istanza del dispositivo Abc.
Chiamare CM_Get_Device_ID per recuperare gli identificatori dell'istanza del dispositivo associati agli handle di istanza del dispositivo restituiti dalle precedenti chiamate a CM_Get_Sibling. Rimuovere l'handle nell'istanza del dispositivo Abc dall'elenco dei dispositivi di pari livello del primo dispositivo figlio del dispositivo padre.
Le informazioni recuperate utilizzando questa procedura sono le stesse rappresentate dalla proprietà DEVPKEY_Device_Siblings nel modello unificato di proprietà del dispositivo di Windows Vista e versioni successive. Se una chiamata di funzione CM_Xxx elencata in questa sezione ha esito positivo, la funzione CM_Xxx recupera le informazioni richieste e restituisce CR_SUCCESS. In caso contrario, la funzionexxx CM_restituisce uno dei codici di errore con prefisso "CR_" definito in Cfgmgr32.h.