Compartir a través de


Método CBasePin.CheckConnect

[La característica asociada a esta página, DirectShow, es una característica heredada. Se ha reemplazado por MediaPlayer, IMFMediaEngine y Captura de audio/vídeo en Media Foundation. Esas características se han optimizado para Windows 10 y Windows 11. Microsoft recomienda encarecidamente que el nuevo código use MediaPlayer, IMFMediaEngine y Audio/Video Capture en Media Foundation en lugar de DirectShow, siempre que sea posible. Microsoft sugiere que el código existente que usa las API heredadas se reescriba para usar las nuevas API si es posible.

El CheckConnect método determina si una conexión de patilla es adecuada.

Sintaxis

virtual HRESULT CheckConnect(
   IPin *pPin
);

Parámetros

pPin

Puntero a la interfaz IPin del otro pin.

Valor devuelto

Devuelve uno de los valores HRESULT que se muestran en la tabla siguiente.

Código devuelto Descripción
S_OK
Correcto.
VFW_E_INVALID_DIRECTION
Las direcciones de anclaje no son compatibles.

Observaciones

Se llama a este método en ambos patillas al principio del proceso de conexión. El pin de conexión lo llama desde el método CBasePin::Connect y el pin receptor lo llama desde el método CBasePin::ReceiveConnection .

Utilice este método para determinar si el pin especificado por el parámetro pPin es adecuado para una conexión. La clase base devuelve un error si ambos patillas tienen la misma dirección (entrada o ambas salidas). Las clases derivadas pueden invalidar este método para comprobar otras características del pin. Por ejemplo, la clase CBaseOutputPin consulta el pin de entrada para su interfaz IMemInputPin .

Si se produce un error en este método, se produce un error en la conexión y la patilla llama al método CBasePin::BreakConnect . Use BreakConnect para liberar los recursos obtenidos en CheckConnect. Por ejemplo, si CheckConnect llama al método QueryInterface , BreakConnect debe liberar la interfaz .

Requisitos

Requisito Value
Encabezado
Amfilter.h (include Streams.h)
Biblioteca
Strmbase.lib (compilaciones comerciales);
Strmbasd.lib (compilaciones de depuración)

Consulte también

CBasePin (clase)