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