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:
Chame AMovieDllRegisterServer2 com um valor TRUE para registrar o filtro.
Chame RegCreateKeyEx para criar e receber um identificador para a chave HKLM\System\CurrentControlSet\Control\MediaInterfaces.
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.
Como a chave não é uma das chaves predefinidas do Registro, chame RegCloseKey para fechar o identificador da chave.
Chame RegCreateKeyEx.
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.
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:
Chame AMovieDllRegisterServer2 com um valor false para cancelar o registro do filtro.
Chame RegCreateKeyEx para abrir a chave existente.
Use RegDeleteKey para excluir a subchave.
Chame RegCloseKey para fechar o identificador da chave.