Classe CUnknown
[O recurso associado a esta página, DirectShow, é um recurso herdado. Ele foi substituído por MediaPlayer, IMFMediaEngine e Captura de Áudio/Vídeo na Media Foundation. Esses recursos foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda fortemente que o novo código use MediaPlayer, IMFMediaEngine e Captura de Áudio/Vídeo no Media Foundation em vez de DirectShow, quando possível. A Microsoft sugere que o código existente que usa as APIs herdadas seja reescrito para usar as novas APIs, se possível.]
A classe CUnknown implementa a interface IUnknown . A maioria dos objetos COM (Component Object Model) no DirectShow deriva de CUnknown.
Se você implementar um objeto COM, talvez queira derive-o de CUnknown. Derivar do CUnknown fornece uma implementação thread-safe e economiza o problema de implementar o IUnknown.
Para obter uma discussão detalhada sobre como usar essa classe base, confira Como implementar o IUnknown. O que se segue é um breve resumo:
- Inclua a macro DECLARE_IUNKNOWN na seção pública da sua definição de classe. Essa macro declara os três métodos da interface IUnknown .
- Substitua o método NonDelegatingQueryInterface para dar suporte a interfaces diferentes de IUnknown. Nesse método, chame a função GetInterface para recuperar ponteiros de interface.
- No construtor de classe, invoque o método do construtor CUnknown .
Variáveis de membro protegidas | Descrição |
---|---|
m_cRef | Contagem de referências. |
Métodos públicos | Descrição |
Cunknown | Método de construtor. |
~Cunknown | Método destruidor. Virtual. |
GetOwner | Obtém um ponteiro para o IUnknown controlador. |
Métodos INonDelegatingUnknown | Descrição |
NonDelegatingAddRef | Incrementa a contagem de referência. |
Nondelegatingqueryinterface | Recupera um ponteiro de interface e incrementa a contagem de referência. |
NonDelegatingRelease | Diminui a contagem de referências. |
Requisitos
Requisito | Valor |
---|---|
parâmetro |
|
Biblioteca |
|