Hardware ID

Un ID hardware è una stringa di identificazione definita dal fornitore che Windows per associare un dispositivo a un file INF. Nella maggior parte dei casi, a un dispositivo sono associati più ID hardware. In genere, un elenco di ID hardware viene ordinato dal più adatto al meno adatto per un dispositivo.

Per trovare l'ID hardware per un determinato dispositivo, seguire questa procedura:

  1. Aprire Gestione dispositivi.
  2. Trovare il dispositivo nell'albero.
  3. Fare clic con il pulsante destro del mouse sul dispositivo e scegliere Proprietà.
  4. Selezionare la scheda Dettagli.
  5. Nell'elenco a discesa Proprietà selezionare ID hardware o ID compatibili.

Creazione di un ID hardware per un dispositivo

In genere, quando si crea un nuovo ID hardware per il dispositivo, si userà uno dei formati generici seguenti:

<enumerator>\<enumerator-specific-device-ID>

Si tratta del formato più comune per i singoli dispositivi PnP segnalati al gestore Plug and Play (PnP) da un singolo enumeratore.

\*<generic-device-ID>

L'asterisco indica che il dispositivo è supportato da più enumeratori, ad esempio ISAPNP e BIOS.

<device-class-specific-ID>

Per altre informazioni, vedere Identificatori generici.

Selezione di un ID hardware

I dispositivi enumerati radice che condividono lo spazio dei nomi generico, ad esempio , possono essere in conflitto e causare un errore giallo-bang in Gestione dispositivi durante l'aggiornamento ROOT\SYSTEM Windows.

È possibile evitare questo problema usando uno spazio dei nomi univoco per ogni driver con un dispositivo enumerato radice. Per un dispositivo USB o di sistema, invece di usare ROOT\USB o ROOT\SYSTEM” usare ROOT\[COMPANYNAME]\[DEVICENAME] . Prima dell'installazione, verificare quindi se il devnode è già presente.

Una classe di dispositivo esistente che ha stabilito la propria convenzione di denominazione può usare un formato personalizzato. Per informazioni sui formati di ID hardware, vedere la specifica hardware per tali bus.

Il numero di caratteri di un ID hardware, escluso un carattere di terminazione NULL, deve essere minore di MAX_DEVICE_ID_LEN . Questo vincolo si applica alla somma delle lunghezze di tutti i campi ed eventuali separatori di \\ campo in un ID hardware. Per altre informazioni, vedere la sezione Operazioni di IRP_MN_QUERY_ID.

Recupero dell'elenco di ID hardware per un dispositivo

Per ottenere l'elenco degli ID hardware per un dispositivo, chiamare IoGetDeviceProperty con il parametro DeviceProperty impostato su DevicePropertyHardwareID. L'elenco di ID hardware recuperati da questa routine è REG_MULTI_SZ valore.

Il numero massimo di caratteri in un elenco hardware, incluso un carattere di terminazione NULL dopo ogni ID hardware e un terminatore NULL finale, è REGSTR_VAL_MAX_HCID_LEN . Il numero massimo possibile di ID in un elenco di ID hardware è 64.

Esempi di ID hardware

Ecco un esempio di identificatore generico per un dispositivo PnP:

root\*PNP0F08

Di seguito è riportato un esempio di identificatore per un dispositivo PCI:

PCI\VEN_1000&DEV_0001&SUBSYS_00000000&REV_02

Vedere anche

Direttiva HardwareId inF