Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
[Das dieser Seite zugeordnete Feature DirectShow ist ein Legacyfeature. Es wurde durch MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation ersetzt. Diese Features wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code nach Möglichkeit MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation anstelle von DirectShow verwendet. Microsoft schlägt vor, vorhandenen Code, der die Legacy-APIs verwendet, um nach Möglichkeit die neuen APIs zu verwenden.]
Die InvokeAtStreamTime -Methode stellt eine Methode oder Eigenschaftsänderung für die Ausführung zu einer angegebenen Streamzeit in die Warteschlange (d.a. Präsentationszeit relativ zum aktuellen Streamzeitoffset).
Syntax
HRESULT InvokeAtStreamTime(
[out] IDeferredCommand **pCmd,
[in] REFTIME time,
[in] GUID *iid,
[in] long dispidMethod,
[in] short wFlags,
[in] long cArgs,
[in] VARIANT *pDispParams,
[in, out] VARIANT *pvarResult,
[out] short *puArgErr
);
Parameter
[out] pCmd
Adresse einer Variablen, die einen IDeferredCommand-Schnittstellenzeiger empfängt.
[in] time
Zeit, zu der der Befehl aufgerufen werden soll.
[in] iid
Zeiger auf den Schnittstellenbezeichner (IID) der Schnittstelle.
[in] dispidMethod
Dispatch Identifier (DISPID) einer Methode oder Eigenschaft auf der Schnittstelle. Entspricht dem dispIdMember-Parameter der IDispatch::Invoke-Methode .
[in] wFlags
Flags, die den Kontext des Aufrufs beschreiben. Entspricht dem wFlags-Parameter der IDispatch::Invoke-Methode .
[in] cArgs
Anzahl der Argumente in pDispParams. Entspricht dem cArgs-Member der DISPPARAMS-Struktur .
[in] pDispParams
Zeiger auf ein Array, das die Argumente enthält. Entspricht dem rgvarg-Element der DISPPARAMS-Struktur .
[in, out] pvarResult
Zeiger auf einen VARIANT-Wert, der das Ergebnis empfängt. Entspricht dem pVarResult-Parameter der IDispatch::Invoke-Methode .
[out] puArgErr
Zeiger auf eine Variable, die den Index des ersten Arguments empfängt, das einen Fehler aufweist. Entspricht dem puArgErr-Parameter der IDispatch::Invoke-Methode .
Rückgabewert
Gibt einen HRESULT-Wert zurück.
Hinweise
Verwenden Sie die IDispatch::GetIDsOfNames-Methode , um die DISPID für den dispidMember-Parameter abzurufen.
Beispiele
Im folgenden Beispiel wird ein IMediaControl::Stop-Befehl für 3,0 Sekunden in die Warteschlange gestellt.
IQueueCommand *pQ = 0;
IMediaControl *pControl = 0;
// Query for IQueueCommand.
pGraph->QueryInterface(IID_IQueueCommand, reinterpret_cast<void**>(&pQ));
// Query for IMediaControl.
pGraph->QueryInterface(IID_IMediaControl, reinterpret_cast<void**>(&pControl));
// Find the DISPID of the IMediaControl::Stop method.
OLECHAR *szMethod = OLESTR("Stop");
long dispid;
hr = pControl->GetIDsOfNames(IID_NULL, &szMethod, 1, 0, &dispid);
// Invoke the command.
IDeferredCommand *pCmd = 0;
hr = pQ->InvokeAtPresentationTime(&pCmd, 3.0,
const_cast<GUID*>(&IID_IMediaControl), dispid, DISPATCH_METHOD,
0, 0, 0, 0);
if (SUCCEEDED(hr))
{
pControl->Run();
pCmd->Release();
}
Anforderungen
| Anforderung | Wert |
|---|---|
| Unterstützte Mindestversion (Client) | Windows 2000 Professional [nur Desktop-Apps] |
| Unterstützte Mindestversion (Server) | Windows 2000 Server [nur Desktop-Apps] |
| Zielplattform | Windows |
| Kopfzeile | control.h (include Dshow.h) |
| Bibliothek | Strmiids.lib |