Share via


ILockBytes::ReadAt-Methode (objidl.h)

Die ReadAt-Methode liest eine angegebene Anzahl von Bytes, beginnend bei einem angegebenen Offset vom Anfang des Bytearrayobjekts.

Syntax

HRESULT ReadAt(
  [in]  ULARGE_INTEGER ulOffset,
  [in]  void           *pv,
  [in]  ULONG          cb,
  [out] ULONG          *pcbRead
);

Parameter

[in] ulOffset

Gibt den Ausgangspunkt vom Anfang des Bytearrays zum Lesen von Daten an.

[in] pv

Zeiger auf den Puffer, in den das Bytearray gelesen wird. Die Größe dieses Puffers ist in cb enthalten.

[in] cb

Gibt die Anzahl der Bytes an, die versucht werden sollen, aus dem Bytearray zu lesen.

[out] pcbRead

Zeiger auf einen ULONG-Wert , in dem diese Methode die tatsächliche Anzahl von Bytes schreibt, die aus dem Bytearray gelesen werden. Sie können diesen Zeiger auf NULL festlegen, um anzugeben, dass Sie an diesem Wert nicht interessiert sind. In diesem Fall stellt diese Methode nicht die tatsächliche Anzahl der gelesenen Bytes bereit.

Rückgabewert

Diese Methode kann einen dieser Werte zurückgeben.

Rückgabecode Beschreibung
S_OK Gibt an, dass die angegebene Anzahl von Bytes gelesen oder die maximale Anzahl von Bytes am Ende des Bytearrays gelesen wurde.
E_FAIL Daten konnten nicht aus dem Bytearray gelesen werden.
E_PENDING Nur asynchroner Speicher: Ein Teil oder alle zu lesenden Daten sind derzeit nicht verfügbar.
STG_E_ACCESSDENIED Der Aufrufer verfügt nicht über die Berechtigung für den Zugriff auf das Bytearray.
STG_E_READFAULT Die Anzahl der zu lesenden Bytes entspricht nicht der Anzahl der Bytes, die tatsächlich gelesen wurden.

Hinweise

ILockBytes::ReadAt liest Bytes aus dem Bytearrayobjekt. Sie meldet die Anzahl der Bytes, die tatsächlich gelesen wurden. Dieser Wert kann kleiner als die Anzahl der angeforderten Bytes sein, wenn ein Fehler auftritt oder das Ende des Bytearrays während des Lesevorgangs erreicht wird.

Es ist kein Fehler, weniger als die angegebene Anzahl von Bytes zu lesen, wenn der Vorgang auf das Ende des Bytearrays trifft. Beachten Sie, dass dies dasselbe Verhalten am Dateiende ist, das auch in MS-DOS-Dateisystemdateien für die Dateizuordnungstabelle (FAT) zu finden ist.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile objidl.h
Bibliothek Uuid.lib
DLL Ole32.dll

Weitere Informationen

ILockBytes – File-Based Implementierung

ILockBytes – Globale Speicherimplementierung

ILockBytes::WriteAt