Share via


Méthode ILockBytes ::ReadAt (objidl.h)

La méthode ReadAt lit un nombre spécifié d’octets en commençant à un décalage spécifié à partir du début de l’objet tableau d’octets.

Syntaxe

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

Paramètres

[in] ulOffset

Spécifie le point de départ à partir du début du tableau d’octets pour la lecture des données.

[in] pv

Pointeur vers la mémoire tampon dans laquelle le tableau d’octets est lu. La taille de cette mémoire tampon est contenue dans cb.

[in] cb

Spécifie le nombre d’octets de données à lire à partir du tableau d’octets.

[out] pcbRead

Pointeur vers un ULONG où cette méthode écrit le nombre réel d’octets lus à partir du tableau d’octets. Vous pouvez définir ce pointeur sur NULL pour indiquer que cette valeur ne vous intéresse pas. Dans ce cas, cette méthode ne fournit pas le nombre réel d’octets qui ont été lus.

Valeur retournée

Cette méthode peut retourner l’une de ces valeurs.

Code de retour Description
S_OK Indique que le nombre d’octets spécifié a été lu ou que le nombre maximal d’octets ont été lus à la fin du tableau d’octets.
E_FAIL Les données n’ont pas pu être lues à partir du tableau d’octets.
E_PENDING Stockage asynchrone uniquement : une partie ou la totalité des données à lire n’est actuellement pas disponible.
STG_E_ACCESSDENIED L’appelant n’a pas l’autorisation d’accéder au tableau d’octets.
STG_E_READFAULT Le nombre d’octets à lire n’est pas égal au nombre d’octets réellement lus.

Remarques

ILockBytes ::ReadAt lit les octets de l’objet tableau d’octets. Il indique le nombre d’octets qui ont été réellement lus. Cette valeur peut être inférieure au nombre d’octets demandé si une erreur se produit ou si la fin du tableau d’octets est atteinte pendant la lecture.

Ce n’est pas une erreur de lire moins que le nombre d’octets spécifié si l’opération rencontre la fin du tableau d’octets. Notez qu’il s’agit du même comportement de fin de fichier que dans les fichiers système de table d’allocation de fichiers MS-DOS (FAT).

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau | Applications UWP]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau | Applications UWP]
Plateforme cible Windows
En-tête objidl.h
Bibliothèque Uuid.lib
DLL Ole32.dll

Voir aussi

ILockBytes - Implémentation File-Based

ILockBytes - Implémentation de la mémoire globale

ILockBytes ::WriteAt