Metodo CCmdQueue.New

[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 New metodo inizializza un comando da eseguire e restituisce un nuovo oggetto CDeferredCommand .

Sintassi

virtual HRESULT New(
   CDeferredCommand **ppCmd,
   LPUNKNOWN        pUnk,
   REFTIME          time,
   GUID             *iid,
   long             dispidMethod,
   short            wFlags,
   long             cArgs,
   VARIANT          *pDispParams,
   VARIANT          *pvarResult,
   short            *puArgErr,
   BOOL             bStream
);

Parametri

ppCmd

Indirizzo di un puntatore a un oggetto CDeferredCommand in base al quale un'applicazione può annullare il comando, impostare una nuova ora di presentazione o recuperare informazioni di stima.

Punk

Puntatore all'oggetto che eseguirà il comando.

time

Ora in cui eseguire il comando o i comandi in coda.

Iid

Puntatore all'identificatore univoco globale (GUID) dell'interfaccia da chiamare.

dispidMethod

Metodo sull'interfaccia da chiamare.

Wflags

Flag che descrivono il contesto della chiamata. Questo parametro supporta gli stessi flag del metodo IDispatch::Invoke .

cArgs

Numero di argomenti passati.

pDispParams

Puntatore all'elenco di tipi varianti associati ai parametri dispatch.

pvarResult

Puntatore all'elenco in cui devono essere restituiti i risultati, se presenti.

puArgErr

Puntatore all'indice all'interno dell'elenco dei parametri pDispParams in cui si è verificato l'ultimo errore.

bStream

Valore che indica se il parametro time è un valore in fase di flusso (TRUE) o un valore di presentazione (FALSE).

Valore restituito

Restituisce S_OK in caso di esito positivo. Restituisce E_OUTOFMEMORY se ppCmd restituisce la creazione del nuovo oggetto CDeferredCommand con un valore NULL. In caso contrario, restituisce un valore HRESULT che indica un errore dal tentativo di creare un nuovo oggetto CDeferredCommand . Se si verifica un errore, non è stato accodato alcun oggetto.

Commenti

Il nuovo oggetto CDeferredCommand verrà inizializzato con i parametri e verrà aggiunto alla coda durante la costruzione. Questo metodo è simile al metodo IDispatch::Invoke .

I valori per il parametro wFlags includono quanto segue:

Valore Descrizione
DISPATCH_METHOD Il membro viene eseguito come metodo. Se una proprietà ha lo stesso nome, è possibile impostare sia questo che il flag DISPATCH_PROPERTYGET.
DISPATCH_PROPERTYGET Il membro viene recuperato come proprietà o membro dati.
DISPATCH_PROPERTYPUT Il membro viene modificato come proprietà o membro dati.
DISPATCH_PROPERTYPUTREF Il membro viene modificato tramite un'assegnazione di riferimento, anziché un'assegnazione di valore. Questo valore è valido solo quando la proprietà accetta un riferimento a un oggetto .

Requisiti

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

Vedi anche

Classe CCmdQueue