This is a new site that's currently running on alpha code. There are going to be bugs. If you discover any, please report them on the site's issues page (GitHub account required). Thanks.
Warning: Many URLs are going to change. Refer to the README file to discover which library project's documentation has been completed.
Project: Stream Extension Classes
Applies to: ~>3.0
TPJFileIStream provides an IStream interface to a file. It’s constructor is like that of TFileStream except that the constructor returns an object of type TPJFileIStream which can be cast to IStream.
The Stat method of TPJFileIStream, like that of TPJHandleIStreamWrapper, provides file date / time stamp information. Additionally, the pwcsName element of the TStatStg structure returns the name of the open file rather than a name based on the class name.
|Clone||Method of IStream. Creates a new IStream object that accesses the same physical stream. Not supported in this implementation.|
|Commit||Method of IStream. Commits pending changes.|
|CopyTo||Method of IStream. Copies data from the file stream into another stream.|
|Create||Object constructor. Creates a stream onto a given file that supports the IStream interface.|
|LockRegion||Method of IStream. Restricts access to a specified range of bytes in the file stream. Not supported in this implementation.|
|Read||Method of IStream. Reads data from the file stream.|
|Revert||Method of IStream. Discards un-committed changes in a transacted stream.|
|Seek||Method of IStream. Changes the seek pointer to a new location.|
|SetSize||Method of IStream. Changes the size of the file stream.|
|Stat||Method of IStream. Retrieves the TStatStg structure that provides information about the file associated with the stream.|
|UnlockRegion||Method of IStream. Removes access restrictions from a range of bytes in the stream. Not supported in this implementation.|
|Write||Method of IStream. Writes data to the file stream.|
[~>3.0.0] The methods of IStream have protected visibility in TPJFileIStream and cannot be accessed from an object instance referenced by a variable of type TPJFileIStream. The methods can only be accessed via the object’s IStream interface.
[~>3.1] Methods of IStream have public visibility.
TPJFileIStream exposes no properties.
TPJFileIStream exposes no events.