Wenn es sich tatsächlich um eine named/unnamed Pipe handelt, empfiehlt sich die
WinAPI Funktion PeekNamedPipe.
Code:
if not PeekNamedPipe(LHandle, nil, 0, nil, @LBytesAvail, nil) then
RaiseLastOSError;
Die Funktion ist nicht blockend (d.h. kein Thread erforderlich) und liefert mit dem obigen Aufruf die Anzahl der verfügbaren Bytes.
Mehr unter
http://msdn.microsoft.com/en-us/libr...8VS.85%29.aspx