Condividi tramite


Metodo CSourceStream.QueryId

[La funzionalità associata a questa pagina, DirectShow, è una funzionalità legacy. È stata sostituita da MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation. Queste funzionalità sono state ottimizzate per Windows 10 e Windows 11. Microsoft consiglia vivamente che il nuovo codice usi MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation invece di DirectShow, quando possibile. Microsoft suggerisce che il codice esistente che usa le API legacy venga riscritto per usare le nuove API, se possibile.

Il QueryId metodo recupera un identificatore per il pin.

Sintassi

HRESULT QueryId(
   LPWSTR *Id
);

Parametri

Id

Puntatore a una variabile che riceve una stringa contenente l'identificatore del pin.

Valore restituito

Restituisce un valore HRESULT . I valori possibili includono quelli illustrati nella tabella seguente.

Codice restituito Descrizione
S_OK
Operazione completata.
E_OUTOFMEMORY
Memoria insufficiente.
E_POINTER
Argomento puntatore NULL.
VFW_E_NOT_FOUND
Il pin non è stato trovato nel filtro.

Commenti

Questo metodo implementa il metodo IPin::QueryId . Per costruire una stringa di identificatore, il pin chiama il metodo CSource::FindPinNumber con se stesso come parametro. Il metodo FindPinNumber restituisce il numero di pin, indicizzato da zero. QueryId incrementa il valore restituito di uno e converte il risultato in una stringa. Ad esempio, il primo pin diventa "1"; il secondo pin diventa "2"; e così via.

Se questo metodo restituisce VFW_E_NOT_FOUND, indica che la matrice di pin del filtro non è valida, presumibilmente causata da un bug nel filtro.

Requisiti

Requisito Valore
Intestazione
Source.h (include Streams.h)
Libreria
Strmbase.lib (build retail);
Strmbasd.lib (build di debug)

Vedi anche

Classe CSourceStream