I am having the devil of a time with a duplex, overlapped,
asynchronous named pipe. I am using WaitForMultipleObjects to detect
events on the pipe. One thing I am not clear on is what causes an
event to be set in connection with the pipe. If it is a message-pipe,
what consititutes a message ? (The buffer size in CreateNamedPipe are
documented as "suggestions"). If it is a byte-mode pipe, how many
bytes have to be received before the event is set? How can I tell the
difference between an event being set by bytes coming in versus a
completed write? What will happen if I disconnect a pipe before the
overlapped write is complete? Does the light in the refrigerator stay
on when you close the door?
Any pointers on this would be greatly appreciated.