La fonction CreateFile dans Visual C++
Je veux utiliser CreateFile() dans Visual C++. lorsque je l'utilise de cette façon:-
{
BOOL bTest=FALSE;
DWORD dwNumRead=0;
HANDLE hFile=CreateFile(L"D:\\a.dat",GENERIC_READ,FILE_SHARE_READ,
NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL,NULL);
bTest= CloseHandle(hFile);
}
La valeur de bTest vient d'être Faux et que le fichier n'est pas créé.
Veuillez, si possible, illustrer un exemple pour créer un fichier à l'aide de CreateFile et dites-moi ce que je fais de mal.
Vous devez vous connecter pour publier un commentaire.
"OPEN_EXISTING : Ouvre un fichier ou d'un périphérique, si et seulement si il existe. Si le fichier ou le périphérique n'existe pas, la fonction échoue". C'est votre problème, je parie.
GetLastError()
serait de vous dire de plus, bien que.Si vous souhaitez créer un fichier utilisez CREATE_ALWAYS ou CREATE_NEW au lieu de OPEN_EXISTING.
Fonction CreateFile
http://msdn.microsoft.com/en-us/library/windows/desktop/aa363858%28v=vs.85%29.aspx
Le problème réel est que vous obtenez un
Invalid File Handle
dansCreateFile
fonction, le paramètredwCreationDisposition
où vous spécifiezOPEN_EXISTING
. Cela signifie queOpens a file or device, only if it exists.
Changer deCREATE_ALWAYS
ouCREATE_NEW
il va travailler.