Lire un fichier ou un peripherique avec ReadFile()

Posté par Djilou le 16/10/2008 20:22:28
Bonjour,

Pouvez vous m'aider dans le passage des paramètres des variables pour l'API ReadFile() la fonction me retour toujours faux !!!!
je ne veux pas utiliser fchargeTexte() ou fouvre() parce que après je veux l'appliquer sur un périphérique USB pour lire le resultat qu'il renvoie


// Variables CreateFile
hFic est un entier // Type C :HANDLE
lpFileName est une chaîne ASCIIZ sur 255 = "c:\Document.doc" // Type C :LPCSTR, c'est l'adresse d'une chaîne, il est aussi possible de spécifier directement une chaîne
dwDesiredAccess est un entier = 2 // Type C :DWORD
dwShareMode est un entier = 2 // Type C :DWORD
lpSecurityAttributes est un entier = 0 // Pointeur sur structure LPSECURITY_ATTRIBUTES
dwCreationDisposition est un entier = 3 // Type C :DWORD
dwFlagsAndAttributes est un entier = 0 // Type C :DWORD
hTemplateFile est un entier = 0 // Type C :HANDLE



//Variables ReadFile
RetourFonction est un booléen // Type C :BOOL
hFile est un entier // Type C :HANDLE
lpBuffer est un Buffer
nNumberOfBytesToRead est un entier = 128 // Type C :DWORD
lpNumberOfBytesRead est un entier // Type C :LPDWORD
lpOverlapped est un entier = 0 // Pointeur sur structure LPOVERLAPPED


hFic =AppelDLL32("KERNEL32","CreateFileA",lpFileName,dwDesiredAccess,dwShareMode,lpSecurityAttributes,dwCreationDisposition,dwFlagsAndAttributes,hTemplateFile)


SI hFic = -1 ALORS

Info("Erreur de création pour " + lpFileName )

SINON

RetourFonction=API("KERNEL32","ReadFile",hFic,lpBuffer,nNumberOfBytesToRead,&lpNumberOfBytesRead,lpOverlapped)
AppelDLL32("kernel32", "CloseHandle", hFic)

FIN

Cette contribution était de : http://old.wdforge.org/newbb/viewtopic.php?forum=19&topic_id=6026&post_id=24231