In the MSDN Help I found this...
In the version of the member function with the nMax parameter, the buffer will hold up to a limit of nMax - 1 characters. Reading is stopped by a carriage return-linefeed pair. Trailing newline characters are always removed. A null character ('\0') is appended in either case.
CArchive::Read is also available for text-mode input, but it does not terminate on a carriage return-linefeed pair.
In the mode that you have it opened for, it may be waiting on a carriage return line feed pair. This is the default behavior for Telnet. In this mode, it's expecting the user to hit the return key, before processing the command.