ILockBytes::ReadAt 方法 (objidl.h)
ReadAt 方法會從位元組數位物件的開頭開始,讀取從指定位移開始的指定位元元組數目。
語法
HRESULT ReadAt(
[in] ULARGE_INTEGER ulOffset,
[in] void *pv,
[in] ULONG cb,
[out] ULONG *pcbRead
);
參數
[in] ulOffset
指定從位元組陣組開頭開始讀取資料的起點。
[in] pv
讀取位元組陣組之緩衝區的指標。 此緩衝區的大小包含在 cb 中。
[in] cb
指定要嘗試從位元組陣列讀取的數據位元組數目。
[out] pcbRead
ULONG 的指標,這個方法會寫入從位元組陣列讀取的實際位元組數目。 您可以將這個指標設定為 NULL ,以指出您對此值不感興趣。 在此情況下,這個方法不會提供讀取的實際位元組數目。
傳回值
這個方法可以傳回其中一個值。
傳回碼 | 描述 |
---|---|
S_OK | 表示已讀取指定的位元組數目,或位元組陣列結尾的位元組數目上限。 |
E_FAIL | 無法從位元組陣列讀取數據。 |
E_PENDING | 僅限異步記憶體:目前無法使用要讀取的部分或所有數據。 |
STG_E_ACCESSDENIED | 呼叫端沒有存取位元組陣列的許可權。 |
STG_E_READFAULT | 要讀取的位元組數目不等於實際讀取的位元元組數目。 |
備註
ILockBytes::ReadAt 會從位元組陣組物件讀取位元組。 它會報告實際讀取的位元組數目。 如果發生錯誤,或讀取期間到達位元組陣組結尾,這個值可能小於所要求的位元組數目。
如果作業遇到位元組陣組結尾,則讀取小於指定位元元組數目的錯誤。 請注意,這與 MS-DOS 檔案配置資料表 (FAT) 檔案系統檔案中找到的檔案結束行為相同。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 專業版 [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows 2000 Server [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | objidl.h |
程式庫 | Uuid.lib |
Dll | Ole32.dll |