Copyright | (c) Alastair Reid, 1997-2003 |
---|---|
License | BSD-style (see the file libraries/base/LICENSE) |
Maintainer | Esa Ilari Vuokko <[email protected]> |
Stability | provisional |
Portability | portable |
Safe Haskell | Safe |
Language | Haskell98 |
A collection of FFI declarations for interfacing with Win32.
type AccessMode = UINT Source
gENERIC_NONE :: AccessMode Source
gENERIC_READ :: AccessMode Source
gENERIC_WRITE :: AccessMode Source
gENERIC_EXECUTE :: AccessMode Source
gENERIC_ALL :: AccessMode Source
rEAD_CONTROL :: AccessMode Source
wRITE_DAC :: AccessMode Source
wRITE_OWNER :: AccessMode Source
sYNCHRONIZE :: AccessMode Source
sTANDARD_RIGHTS_REQUIRED :: AccessMode Source
sTANDARD_RIGHTS_READ :: AccessMode Source
sTANDARD_RIGHTS_WRITE :: AccessMode Source
fILE_SHARE_NONE :: ShareMode Source
sTANDARD_RIGHTS_EXECUTE :: AccessMode Source
sTANDARD_RIGHTS_ALL :: AccessMode Source
fILE_SHARE_READ :: ShareMode Source
sPECIFIC_RIGHTS_ALL :: AccessMode Source
fILE_SHARE_WRITE :: ShareMode Source
aCCESS_SYSTEM_SECURITY :: AccessMode Source
fILE_SHARE_DELETE :: ShareMode Source
mAXIMUM_ALLOWED :: AccessMode Source
type CreateMode = UINT Source
cREATE_NEW :: CreateMode Source
cREATE_ALWAYS :: CreateMode Source
oPEN_EXISTING :: CreateMode Source
oPEN_ALWAYS :: CreateMode Source
tRUNCATE_EXISTING :: CreateMode Source
type FileAttributeOrFlag = UINT Source
fILE_ATTRIBUTE_READONLY :: FileAttributeOrFlag Source
fILE_ATTRIBUTE_HIDDEN :: FileAttributeOrFlag Source
fILE_ATTRIBUTE_SYSTEM :: FileAttributeOrFlag Source
fILE_ATTRIBUTE_DIRECTORY :: FileAttributeOrFlag Source
fILE_ATTRIBUTE_ARCHIVE :: FileAttributeOrFlag Source
fILE_ATTRIBUTE_NORMAL :: FileAttributeOrFlag Source
fILE_ATTRIBUTE_TEMPORARY :: FileAttributeOrFlag Source
fILE_ATTRIBUTE_COMPRESSED :: FileAttributeOrFlag Source
fILE_FLAG_WRITE_THROUGH :: FileAttributeOrFlag Source
fILE_FLAG_OVERLAPPED :: FileAttributeOrFlag Source
sECURITY_ANONYMOUS :: FileAttributeOrFlag Source
fILE_FLAG_NO_BUFFERING :: FileAttributeOrFlag Source
sECURITY_IDENTIFICATION :: FileAttributeOrFlag Source
fILE_FLAG_RANDOM_ACCESS :: FileAttributeOrFlag Source
sECURITY_IMPERSONATION :: FileAttributeOrFlag Source
fILE_FLAG_SEQUENTIAL_SCAN :: FileAttributeOrFlag Source
sECURITY_DELEGATION :: FileAttributeOrFlag Source
fILE_FLAG_DELETE_ON_CLOSE :: FileAttributeOrFlag Source
sECURITY_CONTEXT_TRACKING :: FileAttributeOrFlag Source
fILE_FLAG_BACKUP_SEMANTICS :: FileAttributeOrFlag Source
sECURITY_EFFECTIVE_ONLY :: FileAttributeOrFlag Source
fILE_FLAG_POSIX_SEMANTICS :: FileAttributeOrFlag Source
sECURITY_SQOS_PRESENT :: FileAttributeOrFlag Source
type MoveFileFlag = DWORD Source
sECURITY_VALID_SQOS_FLAGS :: FileAttributeOrFlag Source
mOVEFILE_REPLACE_EXISTING :: MoveFileFlag Source
mOVEFILE_COPY_ALLOWED :: MoveFileFlag Source
mOVEFILE_DELAY_UNTIL_REBOOT :: MoveFileFlag Source
type FilePtrDirection = DWORD Source
fILE_BEGIN :: FilePtrDirection Source
fILE_CURRENT :: FilePtrDirection Source
fILE_END :: FilePtrDirection Source
dRIVE_UNKNOWN :: DriveType Source
dRIVE_NO_ROOT_DIR :: DriveType Source
dRIVE_REMOVABLE :: DriveType Source
dRIVE_FIXED :: DriveType Source
dRIVE_REMOTE :: DriveType Source
dRIVE_CDROM :: DriveType Source
type DefineDosDeviceFlags = DWORD Source
dRIVE_RAMDISK :: DriveType Source
dDD_RAW_TARGET_PATH :: DefineDosDeviceFlags Source
dDD_REMOVE_DEFINITION :: DefineDosDeviceFlags Source
dDD_EXACT_MATCH_ON_REMOVE :: DefineDosDeviceFlags Source
type BinaryType = DWORD Source
sCS_32BIT_BINARY :: BinaryType Source
sCS_DOS_BINARY :: BinaryType Source
sCS_WOW_BINARY :: BinaryType Source
sCS_PIF_BINARY :: BinaryType Source
sCS_POSIX_BINARY :: BinaryType Source
sCS_OS216_BINARY :: BinaryType Source
type FileNotificationFlag = DWORD Source
fILE_NOTIFY_CHANGE_FILE_NAME :: FileNotificationFlag Source
fILE_NOTIFY_CHANGE_DIR_NAME :: FileNotificationFlag Source
fILE_NOTIFY_CHANGE_ATTRIBUTES :: FileNotificationFlag Source
fILE_NOTIFY_CHANGE_SIZE :: FileNotificationFlag Source
fILE_NOTIFY_CHANGE_LAST_WRITE :: FileNotificationFlag Source
fILE_NOTIFY_CHANGE_SECURITY :: FileNotificationFlag Source
fILE_TYPE_UNKNOWN :: FileType Source
fILE_TYPE_DISK :: FileType Source
fILE_TYPE_CHAR :: FileType Source
fILE_TYPE_PIPE :: FileType Source
fILE_TYPE_REMOTE :: FileType Source
newtype GET_FILEEX_INFO_LEVELS Source
GET_FILEEX_INFO_LEVELS Word32 |
getFileExInfoStandard :: GET_FILEEX_INFO_LEVELS Source
getFileExMaxInfoLevel :: GET_FILEEX_INFO_LEVELS Source
type LPSECURITY_ATTRIBUTES = Ptr () Source
type MbLPSECURITY_ATTRIBUTES = Maybe LPSECURITY_ATTRIBUTES Source
data BY_HANDLE_FILE_INFORMATION Source
BY_HANDLE_FILE_INFORMATION | |
data WIN32_FILE_ATTRIBUTE_DATA Source
WIN32_FILE_ATTRIBUTE_DATA | |
Fields |
failIfWithRetry :: (a -> Bool) -> String -> IO a -> IO a Source
like failIfFalse_, but retried on sharing violations. This is necessary for many file operations; see http://support.microsoft.com/kb/316609
failIfWithRetry_ :: (a -> Bool) -> String -> IO a -> IO () Source
failIfFalseWithRetry_ :: String -> IO Bool -> IO () Source
deleteFile :: String -> IO () Source
c_DeleteFile :: LPCTSTR -> IO Bool Source
copyFile :: String -> String -> Bool -> IO () Source
c_CopyFile :: LPCTSTR -> LPCTSTR -> Bool -> IO Bool Source
moveFile :: String -> String -> IO () Source
c_MoveFile :: LPCTSTR -> LPCTSTR -> IO Bool Source
moveFileEx :: String -> String -> MoveFileFlag -> IO () Source
c_MoveFileEx :: LPCTSTR -> LPCTSTR -> MoveFileFlag -> IO Bool Source
setCurrentDirectory :: String -> IO () Source
c_SetCurrentDirectory :: LPCTSTR -> IO Bool Source
createDirectory :: String -> Maybe LPSECURITY_ATTRIBUTES -> IO () Source
c_CreateDirectory :: LPCTSTR -> LPSECURITY_ATTRIBUTES -> IO Bool Source
createDirectoryEx :: String -> String -> Maybe LPSECURITY_ATTRIBUTES -> IO () Source
c_CreateDirectoryEx :: LPCTSTR -> LPCTSTR -> LPSECURITY_ATTRIBUTES -> IO Bool Source
removeDirectory :: String -> IO () Source
c_RemoveDirectory :: LPCTSTR -> IO Bool Source
getBinaryType :: String -> IO BinaryType Source
c_GetBinaryType :: LPCTSTR -> Ptr DWORD -> IO Bool Source
createFile :: String -> AccessMode -> ShareMode -> Maybe LPSECURITY_ATTRIBUTES -> CreateMode -> FileAttributeOrFlag -> Maybe HANDLE -> IO HANDLE Source
c_CreateFile :: LPCTSTR -> AccessMode -> ShareMode -> LPSECURITY_ATTRIBUTES -> CreateMode -> FileAttributeOrFlag -> HANDLE -> IO HANDLE Source
closeHandle :: HANDLE -> IO () Source
c_CloseHandle :: HANDLE -> IO Bool Source
c_CloseHandleFinaliser :: FunPtr (Ptr a -> IO ()) Source
getFileType :: HANDLE -> IO FileType Source
flushFileBuffers :: HANDLE -> IO () Source
c_FlushFileBuffers :: HANDLE -> IO Bool Source
setEndOfFile :: HANDLE -> IO () Source
c_SetEndOfFile :: HANDLE -> IO Bool Source
setFileAttributes :: String -> FileAttributeOrFlag -> IO () Source
c_SetFileAttributes :: LPCTSTR -> FileAttributeOrFlag -> IO Bool Source
getFileAttributes :: String -> IO FileAttributeOrFlag Source
c_GetFileAttributes :: LPCTSTR -> IO FileAttributeOrFlag Source
getFileAttributesExStandard :: String -> IO WIN32_FILE_ATTRIBUTE_DATA Source
c_GetFileAttributesEx :: LPCTSTR -> GET_FILEEX_INFO_LEVELS -> Ptr a -> IO BOOL Source
getFileInformationByHandle :: HANDLE -> IO BY_HANDLE_FILE_INFORMATION Source
c_GetFileInformationByHandle :: HANDLE -> Ptr BY_HANDLE_FILE_INFORMATION -> IO BOOL Source
type LPOVERLAPPED = Ptr () Source
type MbLPOVERLAPPED = Maybe LPOVERLAPPED Source
win32_ReadFile :: HANDLE -> Ptr a -> DWORD -> Maybe LPOVERLAPPED -> IO DWORD Source
c_ReadFile :: HANDLE -> Ptr a -> DWORD -> Ptr DWORD -> LPOVERLAPPED -> IO Bool Source
win32_WriteFile :: HANDLE -> Ptr a -> DWORD -> Maybe LPOVERLAPPED -> IO DWORD Source
c_WriteFile :: HANDLE -> Ptr a -> DWORD -> Ptr DWORD -> LPOVERLAPPED -> IO Bool Source
findFirstChangeNotification :: String -> Bool -> FileNotificationFlag -> IO HANDLE Source
c_FindFirstChangeNotification :: LPCTSTR -> Bool -> FileNotificationFlag -> IO HANDLE Source
findNextChangeNotification :: HANDLE -> IO () Source
c_FindNextChangeNotification :: HANDLE -> IO Bool Source
findCloseChangeNotification :: HANDLE -> IO () Source
c_FindCloseChangeNotification :: HANDLE -> IO Bool Source
type WIN32_FIND_DATA = () Source
FindData (ForeignPtr WIN32_FIND_DATA) |
getFindDataFileName :: FindData -> IO FilePath Source
findFirstFile :: String -> IO (HANDLE, FindData) Source
c_FindFirstFile :: LPCTSTR -> Ptr WIN32_FIND_DATA -> IO HANDLE Source
findNextFile :: HANDLE -> FindData -> IO Bool Source
c_FindNextFile :: HANDLE -> Ptr WIN32_FIND_DATA -> IO BOOL Source
findClose :: HANDLE -> IO () Source
c_FindClose :: HANDLE -> IO BOOL Source
defineDosDevice :: DefineDosDeviceFlags -> String -> String -> IO () Source
c_DefineDosDevice :: DefineDosDeviceFlags -> LPCTSTR -> LPCTSTR -> IO Bool Source
areFileApisANSI :: IO Bool Source
setFileApisToOEM :: IO () Source
setFileApisToANSI :: IO () Source
setHandleCount :: UINT -> IO UINT Source
getLogicalDrives :: IO DWORD Source
c_GetLogicalDrives :: IO DWORD Source
getDiskFreeSpace :: Maybe String -> IO (DWORD, DWORD, DWORD, DWORD) Source
c_GetDiskFreeSpace :: LPCTSTR -> Ptr DWORD -> Ptr DWORD -> Ptr DWORD -> Ptr DWORD -> IO Bool Source
setVolumeLabel :: String -> String -> IO () Source
© The University of Glasgow and others
Licensed under a BSD-style license (see top of the page).
https://downloads.haskell.org/~ghc/7.10.3/docs/html/libraries/Win32-2.3.1.0/System-Win32-File.html