Condividi tramite


Voce del Registro di sistema di esempio per le unità di estensione UVC

Importante

Il contenuto e il codice di esempio in questo argomento sono obsoleti e attualmente non supportati. Potrebbe non funzionare con la toolchain di sviluppo dei driver corrente.

Questo argomento contiene una voce del Registro di sistema di esempio che è possibile usare per supportare le unità di estensione.

Le voci devono essere aggiunte alla sottochiave del Registro di sistema HKLM\System\CurrentControlSet\Control\NodeInterfaces . Questa sottochiave del Registro di sistema contiene i valori GUID del set di proprietà e i valori IID e CLSID per le interfacce che corrispondono a tale set di proprietà.

l'elenco di controllo seguente.

  • Il GUID del set di proprietà corrisponde al GUID nel descrittore unità di estensione.

  • I valori IID e CLSID nella sottochiave NodeInterfaces vengono archiviati in formato binario little-endian.

Di conseguenza, un valore IID pari a {12345678-1234-5678-0123456789abcdef} verrebbe archiviato come segue:

78 56 34 12 34 12 78 56 01 23 45 67 89 ab cd ef
  • I GUID devono essere univoci e devono essere generati usando Guidgen.exe, uno strumento incluso nel Microsoft Windows SDK.

Includere il codice seguente nello script del Registro di sistema, denominato arbitrariamente Xusample.rgs:

HKLM
{
    NoRemove SYSTEM
    {
        NoRemove CurrentControlSet
        {
            NoRemove Control
            {
                NoRemove NodeInterfaces
                {
                    ForceRemove {xxxxxxxx-xxxx-xxxx-xxxx-
                       xxxxxxxxxxxx} = s 'Extension Unit
                       Property Set'
                    {
                        val IID = b 'yyyyyyyyyyyyyyyyyyy
                           yyyyyyyyyyyyy'
                        val CLSID = b 'zzzzzzzzzzzzzzzzz
                           zzzzzzzzzzzzzzz'
                    }
                }
            }
        }
    }
}

Per supportare l'installazione registrando la DLL del plug-in, aggiungere il codice seguente allo script del Registro di sistema:

HKCR
{
    NoRemove CLSID
    {
         ForceRemove {zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzzzzzz} = s 'CompanyName Extension Unit Interface'
        {
            InprocServer32 = s '%MODULE%'
                                                {
                                val ThreadingModel = s 'Both'
                                                }
        }

    }
}