IMFByteStream::BeginRead 方法 (mfobjects.h)
從數據流開始異步讀取作業。
語法
HRESULT BeginRead(
[in] BYTE *pb,
[in] ULONG cb,
[in] IMFAsyncCallback *pCallback,
[in] IUnknown *punkState
);
參數
[in] pb
接收數據的緩衝區指標。 呼叫端必須配置緩衝區。
[in] cb
以位元組為單位的緩衝區大小。
[in] pCallback
回呼物件的 IMFAsyncCallback 介面指標。 呼叫端必須實作這個介面。
[in] punkState
狀態物件的 IUnknown 介面指標,由呼叫端定義。 此參數可以是 Null。 您可以使用這個物件來儲存狀態資訊。 叫用回呼時,物件會傳回給呼叫端。
傳回值
如果此方法成功,則會傳回 S_OK。 否則,它會傳回 HRESULT 錯誤碼。
備註
當所有數據都已讀入緩衝區時,會呼叫回呼物件的 IMFAsyncCallback::Invoke 方法。 此時,應用程式應該呼叫 IMFByteStream::EndRead 來完成異步要求。
在異步讀取擱置時,請勿讀取、寫入、釋放或重新配置緩衝區。
實作注意事項:這個方法應該藉由將要讀取的位元元組數目新增至目前位置,以更新數據流中目前的位置,而這個數目是由 在 azureRead 參數中傳回的值所指定。 其他可更新目前位置的方法包括 BeginRead、 Write、 BeginWrite、 Seek 和 SetCurrentPosition。
如果已安裝 Windows Media Format 11 SDK 可轉散發元件,此介面可在下列平臺上使用:
- Windows XP with Service Pack 2 (SP2) 和更新版本。
- 已安裝 Windows XP Media Center Edition 2005 KB900325 (Windows XP Media Center Edition 2005) 和 KB925766 (2006 年 10 月更新匯總) 的 Windows XP Media Center Edition 2005。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows Server 2008 [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | mfobjects.h (包含 Mfidl.h) |
程式庫 | Mfuuid.lib |