fmOpenRead = $0000; fmOpenWrite = $0001; fmOpenReadWrite = $0002; fmExclusive = $0004; // when used with FileCreate, atomically creates the file only if it doesn't exist, fails otherwise fmShareCompat = $0000 platform; // DOS compatibility mode is not portable fmShareExclusive = $0010; fmShareDenyWrite = $0020; fmShareDenyRead = $0030 platform; // write-only not supported on all platforms fmShareDenyNone = $0040;
constructor Create(const AFileName: string; Mode: Word); overload;
Call Create to instantiate a file stream for reading from or writing to the named file. Specify the name of the file and the way the file should be opened as parameters.
function FileOpen(const FileName: string; Mode: LongWord): Integer;
Use FileOpen to open a file and obtain a file handle. The access mode value is constructed by or-ing one of the fmOpen constants with one of the fmShare constants defined in File open mode constants. If the return value is 0 or greater, the function was successful and the value is the file handle of the opened file. A return value of -1 indicates that an error occurred.
The Mode parameter indicates how the file is to be opened. The Mode parameter consists of an open mode and (possibly) a share mode or'ed together. The open mode must be one of the following values:
Value
|
Meaning
|
fmCreate
|
Create a file with the given name. If a file with the given name exists, open the file in write mode.
|
fmOpenRead
|
Open the file for reading only.
|
fmOpenWrite
|
Open the file for writing only. Writing to the file completely replaces the current contents.
|
fmOpenReadWrite
|
Open the file to modify the current contents rather than replace them.
|
The share mode must be one of the following values:
Value
|
Meaning
|
fmShareCompat
|
Sharing is compatible with the way FCBs are opened.
|
fmShareExclusive
|
Other applications can not open the file for any reason.
|
fmShareDenyWrite
|
Other applications can open the file for reading but not for writing.
|
fmShareDenyRead
|
Other applications can open the file for writing but not for reading.
|
fmShareDenyNone
|
No attempt is made to prevent other applications from reading from or writing to the file.
|
If the file can not be opened, Create raises an exception.