Platform SDK: Files and I/O

File I/O Functions

The following functions are used with files.

Function Description
AreFileApisANSI Determines whether the file I/O functions are using the ANSI or OEM character set code page.
CancelIo Cancels all pending I/O operations that were issued by the calling thread for the specified file handle.
CloseHandle Closes an open object handle.
CopyFile Copies an existing file to a new file.
CopyFileEx Copies an existing file to a new file.
CopyProgressRoutine An application-defined callback function used with CopyFileEx and MoveFileWithProgress.
CreateDirectory Creates a new directory.
CreateDirectoryEx Creates a new directory with the attributes of a specified template directory.
CreateFile Creates or opens a file object.
CreateIoCompletionPort Creates and I/O completion port or associates an instance of an opened file with a newly created or an existing I/O completion port.
DefineDosDevice Defines, redefines, or deletes MS-DOS device names.
DeleteFile Deletes an existing file.
FileIOCompletionRoutine An application-defined callback function used with ReadFileEx and WriteFileEx.
FindClose Closes the specified search handle.
FindCloseChangeNotification Stops change notification handle monitoring.
FindFirstChangeNotification Creates a change notification handle.
FindFirstFile Searches a directory for a file whose name matches the specified file name.
FindFirstFileEx Searches a directory for a file whose name and attributes match those specified.
FindNextChangeNotification Requests that the operating system signal a change notification handle the next time it detects an appropriate change.
FindNextFile Continues a file search.
FlushFileBuffers Clears the buffers for the specified file and causes all buffered data to be written to the file.
GetBinaryType Determines whether a file is executable.
GetCurrentDirectory Retrieves the current directory for the current process.
GetDiskFreeSpace Retrieves information about the specified disk, including the amount of free space on the disk.
GetDiskFreeSpaceEx Retrieves information about the specified disk, including the amount of free space on the disk.
GetDriveType Determines whether a disk drive is a removable, fixed, CD-ROM, RAM disk, or network drive.
GetFileAttributes Retrieves attributes for a specified file or directory.
GetFileAttributesEx Retrieves attributes for a specified file or directory.
GetFileInformationByHandle Retrieves file information for a specified file.
GetFileSize Retrieves the size of a specified file.
GetFileSizeEx Retrieves the size of a specified file.
GetFileType Retrieves the file type of the specified file.
GetFullPathName Retrieves the full path and file name of a specified file.
GetLogicalDrives Returns a bitmask representing the currently available disk drives.
GetLogicalDriveStrings Fills a buffer with strings that specify valid drives in the system.
GetLongPathName Converts the specified path to its long form.
GetQueuedCompletionStatus Attempts to dequeue an I/O completion packet from a specified I/O completion port.
GetShortPathName Retrieves the short path form of a specified input path.
GetTempFileName Creates a name for a temporary file.
GetTempPath Retrieves the path of the directory designated for temporary files.
Int32x32To64 Multiplies two signed 32-bit integers.
Int64ShllMod32 Performs a left logical shift operation on an unsigned 64-bit integer value.
Int64ShraMod32 Performs a right arithmetic shift operation on a signed 64-bit integer value.
Int64ShrlMod32 Performs a right logical shift operation on an unsigned 64-bit integer value.
LockFile Locks a region in an open file.
LockFileEx Locks a region in an open file for shared or exclusive access.
MoveFile Moves an existing file or a directory.
MoveFileEx Moves an existing file or a directory.
MoveFileWithProgress Moves a file or directory.
MulDiv Multiplies two 32-bit values and then divides the 64-bit result by a third 32-bit value.
PostQueuedCompletionStatus Posts an I/O completion packet to an I/O completion port.
QueryDosDevice Retrieves information about MS-DOS device names.
ReadDirectoryChangesW Retrieves information describing the changes occurring within a directory.
ReadFile Reads data from a file, starting at the specified position.
ReadFileEx Reads data from a file asynchronously.
ReadFileScatter Reads data from a file and stores the data into a set of buffers.
RemoveDirectory Deletes an existing empty directory.
ReplaceFile Replaces one file with another file.
SearchPath Searches for the specified file.
SetCurrentDirectory Changes the current directory for the current process.
SetEndOfFile Moves the end-of-file position for the specified file.
SetFileApisToANSI Causes the file I/O functions to use the ANSI character set code page.
SetFileApisToOEM Causes the file I/O functions to use the OEM character set code page.
SetFileAttributes Sets a file's attributes.
SetFilePointer Moves the file pointer of an open file.
SetFilePointerEx Moves the file pointer of an open file.
SetFileSecurity Sets the security of a file or directory object.
SetVolumeLabel Sets the label of a file system volume.
UInt32x32To64 Multiplies two unsigned 32-bit integers, returning an unsigned 64-bit integer result.
UnlockFile Unlocks a previously locked region in an open file.
UnlockFileEx Unlocks a previously locked region in an open file.
WriteFile Writes data to a file.
WriteFileEx Writes data to a file asynchronously.
WriteFileGather Gathers data from a set of buffers and writes the data to a file.

Obsolete Functions

These functions are provided only for compatibility with 16-bit versions of Windows.

_hread
_hwrite
_lclose
_lcreat
_llseek
_lopen
_lread
_lwrite
OpenFile
SetHandleCount