Layout delle chiavi del Registro di sistema

[La funzionalità associata a questa pagina, DirectShow, è una funzionalità legacy. È stata sostituita da MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation. Queste funzionalità sono state ottimizzate per Windows 10 e Windows 11. Microsoft consiglia vivamente che il nuovo codice usi MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation invece di DirectShow, quando possibile. Microsoft suggerisce che il codice esistente che usa le API legacy venga riscritto per usare le nuove API, se possibile.

I filtri DirectShow vengono registrati in due posizioni:

  • La DLL che contiene il filtro viene registrata come server COM del filtro. Quando un'applicazione chiama CoCreateInstance per creare il filtro, la libreria COM di Microsoft Windows usa questa voce del Registro di sistema per individuare la DLL.
  • Altre informazioni sul filtro possono essere registrate all'interno di una categoria di filtri. Queste informazioni consentono all'enumeratore del dispositivo di sistema e al mapper filtro di individuare il filtro.

I filtri non sono necessari per registrare le informazioni aggiuntive sul filtro. Se la DLL viene registrata come server COM, un'applicazione può creare il filtro e aggiungerla a un grafico di filtro. Tuttavia, se si vuole che il filtro sia individuabile dall'enumeratore del dispositivo di sistema o dal mapper filtro, è necessario registrare le informazioni aggiuntive.

La voce del Registro di sistema per la DLL ha le chiavi seguenti:

HKEY_CLASSES_ROOT
    CLSID
        Filter CLSID 
            REG_SZ: (Default) = Friendly name

            InprocServer32
                REG_SZ: (Default) = File name of the DLL
                REG_SZ: ThreadingModel = Both

La voce del Registro di sistema per le informazioni sul filtro include le chiavi seguenti:

HKEY_CLASSES_ROOT
    CLSID
        Category
            Instance
                Filter CLSID
                    REG_SZ: CLSID = Filter CLSID
                    REG_BINARY: FilterData = Filter information
                    REG_SZ: FriendlyName = Friendly name
Category

è il GUID di una categoria di filtri. Vedere Categorie di filtri. Le informazioni sul filtro vengono compresse in un formato binario. L'interfaccia IFilterMapper2 decomprime questi dati quando cerca un filtro nel Registro di sistema.

Tutti i GUID della categoria di filtro sono elencati nel Registro di sistema sotto la chiave seguente:

HKEY_CLASSES_ROOT\CLSID\{DA4E3DA0-D07D-11d0-BD50-00A0C911CE86}\Instance