Share via


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 Professional [デスクトップ アプリ |UWP アプリ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリ |UWP アプリ]
対象プラットフォーム Windows
ヘッダー objidl.h
Library Uuid.lib
[DLL] Ole32.dll

こちらもご覧ください

ILockBytes - File-Based 実装

ILockBytes - グローバル メモリ実装

ILockBytes::WriteAt