我试图使用WriteFile函数。我一直在研究这个例子
http://msdn.microsoft.com/en-us/library/ms900134.aspx
这里传递给WriteFile的缓冲区是从ReadFile填充的。但我不想这样做。我只想写一个像“示例文本测试WriteFile”之类的字符串。但我不确定参数应该具有什么值。我试过在谷歌上四处寻找,但无法找到任何东西。谁知道我是怎么做到的?
答案 0 :(得分:8)
来自MSDN:
BOOL WINAPI WriteFile(
__in HANDLE hFile,
__in LPCVOID lpBuffer,
__in DWORD nNumberOfBytesToWrite,
__out_opt LPDWORD lpNumberOfBytesWritten,
__inout_opt LPOVERLAPPED lpOverlapped
);
strlen(str)
。DWORD
变量的指针,该变量将接收实际写入的字节数。你这样使用它:
char str[] = "Example text testing WriteFile";
DWORD bytesWritten;
WriteFile(fileHandle, str, strlen(str), &bytesWritten, NULL);
如果WriteFile
返回FALSE
,则会出错。使用GetLastError
功能找出错误代码。
答案 1 :(得分:2)
编写字符串的简单示例:
(hOutFile
这是一个来自CreateFile
的调用的打开文件句柄:
{
DWORD dwBytesWritten = 0;
char Str[] = "Example text testing WriteFile";
WriteFile( hOutFile, Str, strlen(Str), &dwBytesWritten, NULL );
}
编辑:检查MSDN函数定义,了解每个参数的作用。