症状
WriteFile() 或 ReadFile() 函数调用可能会失败并出现错误
ERROR_INVALID_PARAMETER
如果您对已命名管道操作并使用,重叠的 I/O。
原因
该故障的可能原因是未将 OVERLAPPED 结构的偏移量和 OffsetHigh 成员设置为零。
解决方案
设置为零的偏移量和 OffsetHigh OVERLAPPED 结构的成员。
状态
此行为是设计使然。联机帮助,WriteFile() 和 ReadFile() OVERLAPPED 结构的偏移量和 OffsetHigh 成员必须设置为零或函数的状态将会失败。
更多信息
在许多情况下的函数调用可能会成功,如果没有显式设置 OVERLAPPED。偏移量和重叠。OffsetHigh 为零。但是,这通常是要么因为 OVERLAPPED 结构是静态或全局,因此初始化为零或 OVERLAPPED 结构是自动 (本地) 和堆栈上该位置的内容已经是零。您应该显式设置 OVERLAPPED。偏移量和重叠。为零的 OffsetHigh 结构成员。