Article: Q11988
Product(s): Microsoft Windows Software Development Kit
Version(s): WINDOWS:3.0,3.1
Operating System(s):
Keyword(s): kb16bitonly
Last Modified: 06-NOV-1999
-------------------------------------------------------------------------------
The information in this article applies to:
- Microsoft Windows Software Development Kit (SDK) versions 3.0, 3.1
-------------------------------------------------------------------------------
SUMMARY
=======
The following functions are provided by the Microsoft C Run-time Library (CRT)
and the Windows API to create a file:
Return Type API or Function Category
--------------------------------------------
HFILE OpenFile Windows API
HFILE _lopen/_lcreat Windows API
int _open/_creat CRT
FILE * fopen CRT
These return types (HFILE, int, and FILE *) are not compatible, so they can not
be used in a function which is expecting the other type. The HFILEs are handles
to operating system files (MS-DOS file handles), the ints are CRT file handles,
and the FILE *s are pointers to structures which represent a CRT stream.
For files opened with OpenFile(), _lopen, and _lcreat, the common file
manipuluation routines that you should use are:
_lclose
_llseek
_lread
_lwrite
For files opened with _open() and _creat(), the common file manipulation routines
that you should use are:
_close
_lseek
_read
_write
For files opened with fopen, the common file manipulation routines that you
should use are:
fclose
fseek
fread
fwrite
For other input and output functions, please check the documentation for
information on whether they are intended for use with MS-DOS handles (HFILE),
streams (FILE *), or low-level I/O (int).
MORE INFORMATION
================
An application should use the OpenFile() API any time an MS-DOS file handle is
required.
The open functions do not necessarily open a file in binary raw mode; the
application is required to set the binary attribute explicitly. The OpenFile()
function automatically performs this step.
If the filename parameter specifies only a filename and extension, the open
functions search for a matching file only in the current directory.
In Windows, the OpenFile() API creates an MS-DOS file handle through which an
application can access Windows-specific files. OpenFile() initially opens the
file in binary raw mode by performing an MS-DOS Interrupt 21h Function 3Dh. If
the lpFileName parameter specifies only a filename and an extension, OpenFile()
searches for a matching file in the following directories:
- The current directory.
- The Windows directory. The GetWindowsDirectory() API returns the path to this
directory.
- The Windows system directory . The GetSystemDirectory() API returns the path
to this directory.
- The directories listed in the PATH environment variable.
Additional query words: 3.00 3.10
======================================================================
Keywords : kb16bitonly
Technology : kbAudDeveloper kbWin3xSearch kbSDKSearch kbWinSDKSearch kbWinSDK300 kbWinSDK310
Version : WINDOWS:3.0,3.1
=============================================================================