Registrando plug-ins de proxy KS

Os plug-ins de interface e de página de propriedades devem se registrar com o proxy KS como um provedor de extensões de proxy KS.

Para registrar seu plug-in, exporte funções chamadas DllRegisterServer e DllUnregisterServer na DLL que implementa o objeto COM. Essas funções são declaradas em Olectl.h , mas são definidas pelo usuário.

Você pode reutilizar o GUID de um conjunto de propriedades como o CLSID do componente e o IID da interface compatível com o componente.

Sua implementação de DllRegisterServer deve fazer o seguinte:

  1. Chame AMovieDllRegisterServer2 com um valor TRUE para registrar o filtro.

  2. Chame RegCreateKeyEx para criar e receber um identificador para a chave HKLM\System\CurrentControlSet\Control\MediaInterfaces.

  3. Use RegSetValueEx para definir um valor sob a chave HKLM\System\CurrentControlSet\Control\MediaInterfaces que mapeia sua propriedade definida como um manipulador de interface. Para obter mais informações sobre manipuladores de interface, consulte Plug-in do manipulador de interface.

  4. Como a chave não é uma das chaves predefinidas do Registro, chame RegCloseKey para fechar o identificador da chave.

  5. Chame RegCreateKeyEx.

  6. Use RegSetValueEx para definir um valor sob a chave HKLM\System\CurrentControlSet\Control\MediaSets\ que mapeia sua propriedade definida como uma página de propriedades. Para obter mais informações sobre plug-ins de página de propriedades, consulte Plug-in da Página de Propriedades.

  7. Como a chave não é uma das chaves predefinidas do Registro, chame RegCloseKey para fechar o identificador da chave.

Sua implementação de DllUnregisterServer deve fazer o seguinte:

  1. Chame AMovieDllRegisterServer2 com um valor false para cancelar o registro do filtro.

  2. Chame RegCreateKeyEx para abrir a chave existente.

  3. Use RegDeleteKey para excluir a subchave.

  4. Chame RegCloseKey para fechar o identificador da chave.