Share via


IQueueCommand::InvokeAtStreamTime 方法 (control.h)

[與此頁面相關的功能 DirectShow 是舊版功能。 它已被 MediaPlayerIMFMediaEngineMedia Foundation 中的音訊/視訊擷取取代。 這些功能已針對 Windows 10 和 Windows 11 進行優化。 Microsoft 強烈建議新程式代碼盡可能使用 MediaPlayerIMFMediaEngine音訊/視訊擷取 ,而不是 DirectShow。 Microsoft 建議使用舊版 API 的現有程式代碼盡可能重寫為使用新的 API。

方法會在 InvokeAtStreamTime 指定的數據流時間排入方法或屬性變更, (也就是相對於目前數據流時間位移的呈現時間) 。

語法

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
);

參數

[out] pCmd

接收 IDeferredCommand 介面指標的變數位址。

[in] time

叫用命令的時間。

[in] iid

介面識別碼 (IID) 的指標。

[in] dispidMethod

在介面上分派方法或屬性 (的 DISPID) 分派標識碼。 相當於 IDispatch::Invoke 方法的 dispIdMember 參數。

[in] wFlags

描述呼叫之內容的旗標。 相當於 IDispatch::Invoke 方法的 wFlags 參數。

[in] cArgs

pDispParams 中的自變數數目。 相當於 DISPPARAMS 結構的 cArgs 成員。

[in] pDispParams

包含自變數的陣列指標。 相當於 DISPPARAMS 結構的 rgvarg 成員。

[in, out] pvarResult

接收結果的 VARIANT 指標。 相當於 IDispatch::Invoke 方法的 pVarResult 參數。

[out] puArgErr

接收錯誤之第一個自變數索引的變數指標。 相當於 IDispatch::Invoke 方法的 puArgErr 參數。

傳回值

傳回 HRESULT 值。

備註

使用 IDispatch::GetIDsOfNames 方法來擷取 dispidMember 參數的 DISPID

範例

下列範例會將 IMediaControl::Stop 命令排入佇列 3.0 秒。


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();
}

規格需求

需求
最低支援的用戶端 Windows 2000 專業版 [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平台 Windows
標頭 control.h (包含 Dshow.h)
程式庫 Strmiids.lib

另請參閱

錯誤和成功碼

IQueueCommand 介面