| ||||||||||||||||||||||
| ||||||||||||||||||||||
| Description | ||||||||||||||||||||||
| A collection of FFI declarations for interfacing with Win32. | ||||||||||||||||||||||
| Documentation | ||||||||||||||||||||||
| type AccessMode = UINT | ||||||||||||||||||||||
| gENERIC_NONE :: AccessMode | ||||||||||||||||||||||
| gENERIC_READ :: AccessMode | ||||||||||||||||||||||
| gENERIC_WRITE :: AccessMode | ||||||||||||||||||||||
| gENERIC_EXECUTE :: AccessMode | ||||||||||||||||||||||
| gENERIC_ALL :: AccessMode | ||||||||||||||||||||||
| dELETE :: AccessMode | ||||||||||||||||||||||
| rEAD_CONTROL :: AccessMode | ||||||||||||||||||||||
| wRITE_DAC :: AccessMode | ||||||||||||||||||||||
| wRITE_OWNER :: AccessMode | ||||||||||||||||||||||
| sYNCHRONIZE :: AccessMode | ||||||||||||||||||||||
| sTANDARD_RIGHTS_REQUIRED :: AccessMode | ||||||||||||||||||||||
| sTANDARD_RIGHTS_READ :: AccessMode | ||||||||||||||||||||||
| sTANDARD_RIGHTS_WRITE :: AccessMode | ||||||||||||||||||||||
| sTANDARD_RIGHTS_EXECUTE :: AccessMode | ||||||||||||||||||||||
| sTANDARD_RIGHTS_ALL :: AccessMode | ||||||||||||||||||||||
| sPECIFIC_RIGHTS_ALL :: AccessMode | ||||||||||||||||||||||
| aCCESS_SYSTEM_SECURITY :: AccessMode | ||||||||||||||||||||||
| mAXIMUM_ALLOWED :: AccessMode | ||||||||||||||||||||||
| type ShareMode = UINT | ||||||||||||||||||||||
| fILE_SHARE_NONE :: ShareMode | ||||||||||||||||||||||
| fILE_SHARE_READ :: ShareMode | ||||||||||||||||||||||
| fILE_SHARE_WRITE :: ShareMode | ||||||||||||||||||||||
| type CreateMode = UINT | ||||||||||||||||||||||
| cREATE_NEW :: CreateMode | ||||||||||||||||||||||
| cREATE_ALWAYS :: CreateMode | ||||||||||||||||||||||
| oPEN_EXISTING :: CreateMode | ||||||||||||||||||||||
| oPEN_ALWAYS :: CreateMode | ||||||||||||||||||||||
| tRUNCATE_EXISTING :: CreateMode | ||||||||||||||||||||||
| type FileAttributeOrFlag = UINT | ||||||||||||||||||||||
| fILE_ATTRIBUTE_READONLY :: FileAttributeOrFlag | ||||||||||||||||||||||
| fILE_ATTRIBUTE_HIDDEN :: FileAttributeOrFlag | ||||||||||||||||||||||
| fILE_ATTRIBUTE_SYSTEM :: FileAttributeOrFlag | ||||||||||||||||||||||
| fILE_ATTRIBUTE_DIRECTORY :: FileAttributeOrFlag | ||||||||||||||||||||||
| fILE_ATTRIBUTE_ARCHIVE :: FileAttributeOrFlag | ||||||||||||||||||||||
| fILE_ATTRIBUTE_NORMAL :: FileAttributeOrFlag | ||||||||||||||||||||||
| fILE_ATTRIBUTE_TEMPORARY :: FileAttributeOrFlag | ||||||||||||||||||||||
| fILE_ATTRIBUTE_COMPRESSED :: FileAttributeOrFlag | ||||||||||||||||||||||
| fILE_FLAG_WRITE_THROUGH :: FileAttributeOrFlag | ||||||||||||||||||||||
| fILE_FLAG_OVERLAPPED :: FileAttributeOrFlag | ||||||||||||||||||||||
| fILE_FLAG_NO_BUFFERING :: FileAttributeOrFlag | ||||||||||||||||||||||
| fILE_FLAG_RANDOM_ACCESS :: FileAttributeOrFlag | ||||||||||||||||||||||
| fILE_FLAG_SEQUENTIAL_SCAN :: FileAttributeOrFlag | ||||||||||||||||||||||
| fILE_FLAG_DELETE_ON_CLOSE :: FileAttributeOrFlag | ||||||||||||||||||||||
| fILE_FLAG_BACKUP_SEMANTICS :: FileAttributeOrFlag | ||||||||||||||||||||||
| fILE_FLAG_POSIX_SEMANTICS :: FileAttributeOrFlag | ||||||||||||||||||||||
| sECURITY_ANONYMOUS :: FileAttributeOrFlag | ||||||||||||||||||||||
| sECURITY_IDENTIFICATION :: FileAttributeOrFlag | ||||||||||||||||||||||
| sECURITY_IMPERSONATION :: FileAttributeOrFlag | ||||||||||||||||||||||
| sECURITY_DELEGATION :: FileAttributeOrFlag | ||||||||||||||||||||||
| sECURITY_CONTEXT_TRACKING :: FileAttributeOrFlag | ||||||||||||||||||||||
| sECURITY_EFFECTIVE_ONLY :: FileAttributeOrFlag | ||||||||||||||||||||||
| sECURITY_SQOS_PRESENT :: FileAttributeOrFlag | ||||||||||||||||||||||
| sECURITY_VALID_SQOS_FLAGS :: FileAttributeOrFlag | ||||||||||||||||||||||
| type MoveFileFlag = DWORD | ||||||||||||||||||||||
| mOVEFILE_REPLACE_EXISTING :: MoveFileFlag | ||||||||||||||||||||||
| mOVEFILE_COPY_ALLOWED :: MoveFileFlag | ||||||||||||||||||||||
| mOVEFILE_DELAY_UNTIL_REBOOT :: MoveFileFlag | ||||||||||||||||||||||
| type FilePtrDirection = DWORD | ||||||||||||||||||||||
| fILE_BEGIN :: FilePtrDirection | ||||||||||||||||||||||
| fILE_CURRENT :: FilePtrDirection | ||||||||||||||||||||||
| fILE_END :: FilePtrDirection | ||||||||||||||||||||||
| type DriveType = UINT | ||||||||||||||||||||||
| dRIVE_UNKNOWN :: DriveType | ||||||||||||||||||||||
| dRIVE_NO_ROOT_DIR :: DriveType | ||||||||||||||||||||||
| dRIVE_REMOVABLE :: DriveType | ||||||||||||||||||||||
| dRIVE_FIXED :: DriveType | ||||||||||||||||||||||
| dRIVE_REMOTE :: DriveType | ||||||||||||||||||||||
| dRIVE_CDROM :: DriveType | ||||||||||||||||||||||
| dRIVE_RAMDISK :: DriveType | ||||||||||||||||||||||
| type DefineDosDeviceFlags = DWORD | ||||||||||||||||||||||
| dDD_RAW_TARGET_PATH :: DefineDosDeviceFlags | ||||||||||||||||||||||
| dDD_REMOVE_DEFINITION :: DefineDosDeviceFlags | ||||||||||||||||||||||
| dDD_EXACT_MATCH_ON_REMOVE :: DefineDosDeviceFlags | ||||||||||||||||||||||
| type BinaryType = DWORD | ||||||||||||||||||||||
| sCS_32BIT_BINARY :: BinaryType | ||||||||||||||||||||||
| sCS_DOS_BINARY :: BinaryType | ||||||||||||||||||||||
| sCS_WOW_BINARY :: BinaryType | ||||||||||||||||||||||
| sCS_PIF_BINARY :: BinaryType | ||||||||||||||||||||||
| sCS_POSIX_BINARY :: BinaryType | ||||||||||||||||||||||
| sCS_OS216_BINARY :: BinaryType | ||||||||||||||||||||||
| type FileNotificationFlag = DWORD | ||||||||||||||||||||||
| fILE_NOTIFY_CHANGE_FILE_NAME :: FileNotificationFlag | ||||||||||||||||||||||
| fILE_NOTIFY_CHANGE_DIR_NAME :: FileNotificationFlag | ||||||||||||||||||||||
| fILE_NOTIFY_CHANGE_ATTRIBUTES :: FileNotificationFlag | ||||||||||||||||||||||
| fILE_NOTIFY_CHANGE_SIZE :: FileNotificationFlag | ||||||||||||||||||||||
| fILE_NOTIFY_CHANGE_LAST_WRITE :: FileNotificationFlag | ||||||||||||||||||||||
| fILE_NOTIFY_CHANGE_SECURITY :: FileNotificationFlag | ||||||||||||||||||||||
| type FileType = DWORD | ||||||||||||||||||||||
| fILE_TYPE_UNKNOWN :: FileType | ||||||||||||||||||||||
| fILE_TYPE_DISK :: FileType | ||||||||||||||||||||||
| fILE_TYPE_CHAR :: FileType | ||||||||||||||||||||||
| fILE_TYPE_PIPE :: FileType | ||||||||||||||||||||||
| fILE_TYPE_REMOTE :: FileType | ||||||||||||||||||||||
| type LPSECURITY_ATTRIBUTES = Ptr () | ||||||||||||||||||||||
| type MbLPSECURITY_ATTRIBUTES = Maybe LPSECURITY_ATTRIBUTES | ||||||||||||||||||||||
| data BY_HANDLE_FILE_INFORMATION | ||||||||||||||||||||||
| ||||||||||||||||||||||
| deleteFile :: String -> IO () | ||||||||||||||||||||||
| c_DeleteFile :: LPCTSTR -> IO Bool | ||||||||||||||||||||||
| copyFile :: String -> String -> Bool -> IO () | ||||||||||||||||||||||
| c_CopyFile :: LPCTSTR -> LPCTSTR -> Bool -> IO Bool | ||||||||||||||||||||||
| moveFile :: String -> String -> IO () | ||||||||||||||||||||||
| c_MoveFile :: LPCTSTR -> LPCTSTR -> IO Bool | ||||||||||||||||||||||
| moveFileEx :: String -> String -> MoveFileFlag -> IO () | ||||||||||||||||||||||
| c_MoveFileEx :: LPCTSTR -> LPCTSTR -> MoveFileFlag -> IO Bool | ||||||||||||||||||||||
| setCurrentDirectory :: String -> IO () | ||||||||||||||||||||||
| c_SetCurrentDirectory :: LPCTSTR -> IO Bool | ||||||||||||||||||||||
| createDirectory :: String -> Maybe LPSECURITY_ATTRIBUTES -> IO () | ||||||||||||||||||||||
| c_CreateDirectory :: LPCTSTR -> LPSECURITY_ATTRIBUTES -> IO Bool | ||||||||||||||||||||||
| createDirectoryEx :: String -> String -> Maybe LPSECURITY_ATTRIBUTES -> IO () | ||||||||||||||||||||||
| c_CreateDirectoryEx :: LPCTSTR -> LPCTSTR -> LPSECURITY_ATTRIBUTES -> IO Bool | ||||||||||||||||||||||
| removeDirectory :: String -> IO () | ||||||||||||||||||||||
| c_RemoveDirectory :: LPCTSTR -> IO Bool | ||||||||||||||||||||||
| getBinaryType :: String -> IO BinaryType | ||||||||||||||||||||||
| c_GetBinaryType :: LPCTSTR -> Ptr DWORD -> IO Bool | ||||||||||||||||||||||
| createFile :: String -> AccessMode -> ShareMode -> Maybe LPSECURITY_ATTRIBUTES -> CreateMode -> FileAttributeOrFlag -> Maybe HANDLE -> IO HANDLE | ||||||||||||||||||||||
| c_CreateFile :: LPCTSTR -> AccessMode -> ShareMode -> LPSECURITY_ATTRIBUTES -> CreateMode -> FileAttributeOrFlag -> HANDLE -> IO HANDLE | ||||||||||||||||||||||
| closeHandle :: HANDLE -> IO () | ||||||||||||||||||||||
| c_CloseHandle :: HANDLE -> IO Bool | ||||||||||||||||||||||
| c_CloseHandleFinaliser :: FunPtr (Ptr a -> IO ()) | ||||||||||||||||||||||
| getFileType :: HANDLE -> IO FileType | ||||||||||||||||||||||
| flushFileBuffers :: HANDLE -> IO () | ||||||||||||||||||||||
| c_FlushFileBuffers :: HANDLE -> IO Bool | ||||||||||||||||||||||
| setEndOfFile :: HANDLE -> IO () | ||||||||||||||||||||||
| c_SetEndOfFile :: HANDLE -> IO Bool | ||||||||||||||||||||||
| setFileAttributes :: String -> FileAttributeOrFlag -> IO () | ||||||||||||||||||||||
| c_SetFileAttributes :: LPCTSTR -> FileAttributeOrFlag -> IO Bool | ||||||||||||||||||||||
| getFileAttributes :: String -> IO FileAttributeOrFlag | ||||||||||||||||||||||
| c_GetFileAttributes :: LPCTSTR -> IO FileAttributeOrFlag | ||||||||||||||||||||||
| getFileInformationByHandle :: HANDLE -> IO BY_HANDLE_FILE_INFORMATION | ||||||||||||||||||||||
| c_GetFileInformationByHandle :: HANDLE -> Ptr BY_HANDLE_FILE_INFORMATION -> IO BOOL | ||||||||||||||||||||||
| type LPOVERLAPPED = Ptr () | ||||||||||||||||||||||
| type MbLPOVERLAPPED = Maybe LPOVERLAPPED | ||||||||||||||||||||||
| win32_ReadFile :: HANDLE -> Ptr a -> DWORD -> Maybe LPOVERLAPPED -> IO DWORD | ||||||||||||||||||||||
| c_ReadFile :: HANDLE -> Ptr a -> DWORD -> Ptr DWORD -> LPOVERLAPPED -> IO Bool | ||||||||||||||||||||||
| win32_WriteFile :: HANDLE -> Ptr a -> DWORD -> Maybe LPOVERLAPPED -> IO DWORD | ||||||||||||||||||||||
| c_WriteFile :: HANDLE -> Ptr a -> DWORD -> Ptr DWORD -> LPOVERLAPPED -> IO Bool | ||||||||||||||||||||||
| findFirstChangeNotification :: String -> Bool -> FileNotificationFlag -> IO HANDLE | ||||||||||||||||||||||
| c_FindFirstChangeNotification :: LPCTSTR -> Bool -> FileNotificationFlag -> IO HANDLE | ||||||||||||||||||||||
| findNextChangeNotification :: HANDLE -> IO () | ||||||||||||||||||||||
| c_FindNextChangeNotification :: HANDLE -> IO Bool | ||||||||||||||||||||||
| findCloseChangeNotification :: HANDLE -> IO () | ||||||||||||||||||||||
| c_FindCloseChangeNotification :: HANDLE -> IO Bool | ||||||||||||||||||||||
| defineDosDevice :: DefineDosDeviceFlags -> String -> String -> IO () | ||||||||||||||||||||||
| c_DefineDosDevice :: DefineDosDeviceFlags -> LPCTSTR -> LPCTSTR -> IO Bool | ||||||||||||||||||||||
| areFileApisANSI :: IO Bool | ||||||||||||||||||||||
| setFileApisToOEM :: IO () | ||||||||||||||||||||||
| setFileApisToANSI :: IO () | ||||||||||||||||||||||
| setHandleCount :: UINT -> IO UINT | ||||||||||||||||||||||
| getLogicalDrives :: IO DWORD | ||||||||||||||||||||||
| c_GetLogicalDrives :: IO DWORD | ||||||||||||||||||||||
| getDiskFreeSpace :: Maybe String -> IO (DWORD, DWORD, DWORD, DWORD) | ||||||||||||||||||||||
| c_GetDiskFreeSpace :: LPCTSTR -> Ptr DWORD -> Ptr DWORD -> Ptr DWORD -> Ptr DWORD -> IO Bool | ||||||||||||||||||||||
| setVolumeLabel :: String -> String -> IO () | ||||||||||||||||||||||
| c_SetVolumeLabel :: LPCTSTR -> LPCTSTR -> IO Bool | ||||||||||||||||||||||
| Produced by Haddock version 0.8 | ||||||||||||||||||||||