[Overview][Constants][Classes][Procedures and functions] Reference for unit 'Pipes' (#fcl)

TInputPipeStream.Seek

Set the current position of the stream

Declaration

Source position: pipes.pp line 36

public function TInputPipeStream.Seek(

  Offset: LongInt;

  Origin: Word

):LongInt; override;

Arguments

Offset

  

Offset, in bytes, starting at Origin

Origin

  

Where to start counting Offsetbytes.

Function result

New position of the stream.

Description

Seekoverrides the standard Seekimplementation. Normally, pipe streams stderr are not seekable. The TInputPipeStreamstream tries to provide seek capabilities for the following limited number of cases:

Origin=soFromBeginning
If Offsetis larger than the current position, then the remaining bytes are skipped by reading them from the stream and discarding them.
Origin=soFromCurrent
If Offsetis zero, the current position is returned. If it is positive, then Offsetbytes are skipped by reading them from the stream and discarding them, if the stream is of type iosInput.

All other cases will result in a EPipeSeekexception.

Errors

An EPipeSeekexception is raised if the stream does not allow the requested seek operation.

See also

EPipeSeek

  

Exception raised when an invalid seek operation is attempted on a pipe.

Seek