Knowledge Base

PRB: Named Pipe Write() Limited to 64K

Article ID: 119218

Article Last Modified on 11/21/2006


APPLIES TO


This article was previously published under Q119218

SYMPTOMS

WriteFile() returns FALSE and GetLastError() returns
ERROR_MORE_DATA
when WriteFile() writes to a message-mode named pipe using a buffer greater than 64K.

CAUSE

There is a 64K limit on named pipe writes.

RESOLUTION

The error is different from ERROR_MORE_DATA on the reader side, where bytes have already been read and the operation should be retried for the remaining message. The real error is STATUS_BUFFER_OVERFLOW. No data is transmitted; therefore, the write operation must be retried using a smaller buffer.

Keywords: kbapi kbpipes kbnetwork kbkernbase kbipc KB119218