WriteFile()问题,请求各位高手帮帮忙啊!急求!!!
HANDLE hPipeInputRead, hPipeInputWrite, hPipeOutputRead, hPipeOutputWrite;
//创建两个管道
SECURITY_ATTRIBUTES sa;
sa.nLength = sizeof(SECURITY_ATTRIBUTES);
sa.lpSecurityDescriptor = NULL;
sa.bInheritHandle = TRUE;
//数据输入管道
CreatePipe(&hPipeInputRead, &hPipeInputWrite, &sa, 0);
//数据输出管道
CreatePipe(&hPipeOutputRead, &hPipeOutputWrite, &sa, 0);
//从文件中读取数据,写入管道ReadFile中.
const int BUFSIZE = 4096;
CHAR chBuf[BUFSIZE] = {0};
DWORD dwRead, dwWritten;
BOOL fSuccess;
HANDLE hInputFile = CreateFile("infile.txt", GENERIC_READ, 0, NULL, OPEN_EXISTING, 0/*FILE_ATTRIBUTE_READONLY*/, NULL);
while (true)
{
//从文件中读取数据
fSuccess = ReadFile(hInputFile, chBuf, BUFSIZE, &dwRead, NULL);
if (!fSuccess || dwRead == 0)
break;
//将数据写入管道
fSuccess = WriteFile(hPipeInputWrite, chBuf, dwRead, &dwWritten, NULL);
memset(chBuf,0,BUFSIZE); //数据清空
if (!fSuccess)
break;
}
//关闭输入数据管道
CloseHandle(hInputFile);
hInputFile = NULL;
CloseHandle(hPipeInputWrite);
hPipeInputWrite = NULL;
WriteFile(),我用它来读取一个TXT文件中的数据,如果数据比较小,一次可以读完的话,程序基本上没有问题。但是如果一次没有读完,第二次再进去读取数据,然后再利用WriteFile()给通道中写数据时,程序就会停止,利用断点也是,一旦第二次走的这个地方,就会死掉,各位大神这个到底是什么问题啊!我在网上查了一些资料,有人说这是同步和异步处理的问题,但是自己是新手,对这个问题不是很懂,请各位高手帮帮忙啊~!
...全文
相关推荐
node.js中的fs.writeFile方法使用说明
主要介绍了node.js中的fs.writeFile方法使用说明,本文介绍了fs.writeFile的方法说明、语法、接收参数、使用实例和实现源码,需要的朋友可以参考下
WriteFile.zip
自己写的写文件demo,用来调试操作系统内核代码,测试用的。
bac.rar_writefile
使用WriteFile 块读写数据,可以的源码会让你很用
Hook Api,hook ReadFile,hook WriteFile,hook LoadLibrary
hook api,hook CreateFile,hook CloseHandle,hook ReadFile,hook WriteFile,hook LoadLibrary
wrightFile:包装 fs.writeFile、mkdirp 和其他整洁
莱特档案 包装 fs.writeFile、mkdirp 和其他整洁。


