| ||||||||||||||||||||||
| ||||||||||||||||||||||
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 |