WIN32API读取文件流一问
CreateFile(pstrFileName, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTRING);
ReadFile(hFile, pBuffer, iFileLength, &dwBytesRead, NULL);
CloseHandle(hFile);
这是一段在WIN32API编程中,文件读写的代码.能够正确地打开和读取TXT文件.但是我现在需要打开的是一个可执行文件(BIN,EXE).这时候就会出现问题。
因为在读取文本文件的时候,定义的结束的标志的EOF,但可执行文件并无此标志。用上诉代码打开的BIN文件pBuffer只能读取其中的一小段,然后就没有了。
在标准C下,有fOpen(),fbRead()等等函数,让你选择打开或读取的方式(ASCll或二进制)。但我不想回到这种方式,希望用WINAPI提供的异步方式打开。不知道有没有谁能帮忙解决。
我在WINSOCK上遇到同样的问题,Send(sock, buf,0);我不能发送二进制流,而是发送了buf的ASCLL码。虽然我通过一个算法硬把ASCLL数据转成了十六进制发送,但很笨拙。
希望有热心的朋友能帮下我。非常感谢。