IMFTimer::SetTimer 方法 (mfidl.h)
設定在指定時間叫用回呼的計時器。
語法
HRESULT SetTimer(
[in] DWORD dwFlags,
[in] LONGLONG llClockTime,
[in] IMFAsyncCallback *pCallback,
[in] IUnknown *punkState,
[out] IUnknown **ppunkKey
);
參數
[in] dwFlags
MFTIMER_FLAGS 列舉中 零個或多個旗標的位 OR。
[in] llClockTime
計時器應該引發的時間,以時鐘頻率單位為單位。 時間是絕對時間或相對於目前時間,視 dwFlags的值而定。
[in] pCallback
回呼物件的 IMFAsyncCallback 介面指標。 呼叫端必須實作這個介面。 回呼的 Invoke 方法會在 llClockTime 參數中指定的時間呼叫。
[in] punkState
狀態物件的 IUnknown 介面指標,由呼叫端定義。 此參數可以是 Null。 您可以使用這個物件來保存狀態資訊。 叫用回呼時,物件會傳回給呼叫端。
[out] ppunkKey
接收取消物件的 IUnknown 介面指標。 呼叫端必須釋放 介面。 若要取消計時器,請將此指標傳遞至 IMFTimer::CancelTimer 方法。 此參數可以是 Null。
傳回值
方法會傳回 HRESULT。 可能的值包括 (但不限於) 下表中的這些值。
傳回碼 | 描述 |
---|---|
|
此方法已成功。 |
|
時鐘已關閉。 |
|
方法成功,但時鐘已停止。 |
備註
如果時鐘停止,方法會傳回MF_S_CLOCK_STOPPED。 直到時鐘啟動之後,才會叫用回呼。
需求
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | mfidl.h |
程式庫 | Mfuuid.lib |