Condividi tramite


Registrazione dei plug-in proxy KS

I plug-in della pagina delle interfacce e delle proprietà devono essere registrati con il proxy KS come provider di estensioni proxy KS.

Per registrare i plug-in, esportare funzioni denominate DllRegisterServer e DllUnregisterServer nella DLL che implementa l'oggetto COM. Queste funzioni vengono dichiarate in Olectl.h , ma sono definite dall'utente.

È possibile riutilizzare il GUID di un set di proprietà come CLSID del componente e l'IID dell'interfaccia supportata dal componente.

L'implementazione di DllRegisterServer deve eseguire le operazioni seguenti:

  1. Chiamare AMovieDllRegisterServer2 con un valore true per registrare il filtro.

  2. Chiamare RegCreateKeyEx per creare e ricevere un handle alla chiave HKLM\System\CurrentControlSet\Control\MediaInterfaces.

  3. Usare RegSetValueEx per impostare un valore nella chiave HKLM\System\CurrentControlSet\Control\MediaInterfaces che esegue il mapping della proprietà impostata su un gestore dell'interfaccia. Per altre informazioni sui gestori dell'interfaccia, vedere Plug-in del gestore dell'interfaccia.

  4. Poiché la chiave non è una delle chiavi predefinite del Registro di sistema, chiamare RegCloseKey per chiudere l'handle alla chiave.

  5. Chiamare RegCreateKeyEx.

  6. Usare RegSetValueEx per impostare un valore nella chiave HKLM\System\CurrentControlSet\Control\MediaSets\ che esegue il mapping della proprietà impostata su una pagina delle proprietà. Per altre informazioni sui plug-in della pagina delle proprietà, vedere Plug-in pagina delle proprietà.

  7. Poiché la chiave non è una delle chiavi predefinite del Registro di sistema, chiamare RegCloseKey per chiudere l'handle alla chiave.

L'implementazione di DllUnregisterServer deve eseguire le operazioni seguenti:

  1. Chiamare AMovieDllRegisterServer2 con un valore false per annullare la registrazione del filtro.

  2. Chiamare RegCreateKeyEx per aprire la chiave esistente.

  3. Usare RegDeleteKey per eliminare la sottochiave.

  4. Chiamare RegCloseKey per chiudere l'handle alla chiave.