Método IResourceManager::RequestResource (strmif.h)
[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.]
O RequestResource
método solicita o uso de um determinado recurso registrado.
Sintaxe
HRESULT RequestResource(
[in] LONG idResource,
[in] IUnknown *pFocusObject,
[in] IResourceConsumer *pConsumer
);
Parâmetros
[in] idResource
Token de recurso recuperado quando o recurso foi registrado.
[in] pFocusObject
Ponteiro para a interface IUnknown de um objeto de foco associado a uma solicitação (normalmente a interface IUnknown do filtro).
[in] pConsumer
Ponteiro para a interface IResourceConsumer no objeto que solicita o recurso.
Retornar valor
Retorna um valor HRESULT . Retorna S_OK se o recurso solicitado for retornado ou S_FALSE se o recurso não estiver disponível, nesse caso, o gerenciador de recursos chamará o objeto solicitante de volta quando o recurso ficar disponível. Qualquer outro retorno é um erro.
Comentários
Quando houver mais de uma solicitação para o recurso, o gerenciador de recursos decidirá a prioridade usando o objeto de foco passado com cada solicitação e comparando-o com o objeto de foco passado no método IResourceManager::SetFocus mais recente.
As solicitações serão preenchidas na seguinte ordem de prioridade:
- Solicitações feitas com exatamente o mesmo objeto de foco que o último método SetFocus .
- Solicitações cujo objeto de foco compartilha um filtro de origem comum cujo objeto de foco compartilha um grafo de filtro comum.
- Solicitações no mesmo processo que o foco.
Um filtro deve passar a interface IUnknown do filtro no parâmetro pFocusObject . O gerenciador de grafo de filtro corresponde aos filtros ao grafo de filtro e tentará rastrear filtros para filtros de origem comuns ao verificar objetos de foco.
O objeto de foco deve ser válido durante todo o tempo de vida da solicitação, até que o método IResourceManager::CancelRequest seja chamado ou o método IResourceManager::NotifyRelease seja chamado com o parâmetro bStillWant definido como FALSE.
Requisitos
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | strmif.h (inclua Dshow.h) |
Biblioteca | Strmiids.lib |