Condividi tramite


Metodo ILockBytes::ReadAt (objidl.h)

Il metodo ReadAt legge un numero specificato di byte a partire da un offset specificato dall'inizio dell'oggetto matrice di byte.

Sintassi

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

Parametri

[in] ulOffset

Specifica il punto iniziale dall'inizio della matrice di byte per la lettura dei dati.

[in] pv

Puntatore al buffer in cui viene letta la matrice di byte. Le dimensioni di questo buffer sono contenute in cb.

[in] cb

Specifica il numero di byte di dati da leggere dalla matrice di byte.

[out] pcbRead

Puntatore a un ULONG in cui questo metodo scrive il numero effettivo di byte letti dalla matrice di byte. È possibile impostare questo puntatore su NULL per indicare che non si è interessati a questo valore. In questo caso, questo metodo non fornisce il numero effettivo di byte letti.

Valore restituito

Questo metodo può restituire uno di questi valori.

Codice restituito Descrizione
S_OK Indica che il numero specificato di byte è stato letto o che il numero massimo di byte è stato letto alla fine della matrice di byte.
E_FAIL Impossibile leggere i dati dalla matrice di byte.
E_PENDING Solo archiviazione asincrona: parte o tutti i dati da leggere non sono attualmente disponibili.
STG_E_ACCESSDENIED Il chiamante non dispone dell'autorizzazione per accedere alla matrice di byte.
STG_E_READFAULT Il numero di byte da leggere non equivale al numero di byte effettivamente letti.

Commenti

ILockBytes::ReadAt legge i byte dall'oggetto matrice di byte. Segnala il numero di byte effettivamente letti. Questo valore può essere minore del numero di byte richiesti se si verifica un errore o se la fine della matrice di byte viene raggiunta durante la lettura.

Non è un errore leggere meno del numero specificato di byte se l'operazione rileva la fine della matrice di byte. Si noti che si tratta dello stesso comportamento end-of-file rilevato nei file di file system FAT (MS-DOS File Allocation Table).

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [app desktop | App UWP]
Server minimo supportato Windows 2000 Server [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione objidl.h
Libreria Uuid.lib
DLL Ole32.dll

Vedi anche

ILockBytes - Implementazione di File-Based

ILockBytes - Implementazione della memoria globale

ILockBytes::WriteAt