Win32-2.6.2.1: A binding to Windows Win32 API.
Copyright(c) Esa Ilari Vuokko 2006
LicenseBSD-style (see the file LICENSE)
MaintainerEsa Ilari Vuokko <ei@vuokko.info>
Stabilityprovisional
Portabilityportable
Safe HaskellTrustworthy
LanguageHaskell2010

System.Win32.FileMapping

Description

A collection of FFI declarations for interfacing with Win32 mapped files.

Synopsis

Documentation

mapFile :: FilePath -> IO (ForeignPtr a, Int) #

Maps file fully and returns ForeignPtr and length of the mapped area. The mapped file is opened read-only and shared reading.

mapFileBs :: FilePath -> IO ByteString #

As mapFile, but returns ByteString

withMappedFile #

Arguments

:: FilePath

Path

-> Bool

Write? (False = read-only)

-> Maybe Bool

Sharing mode, no sharing, share read, share read+write

-> (Integer -> MappedObject -> IO a)

Action

-> IO a 

Opens an existing file and creates mapping object to it.

withMappedArea #

Arguments

:: MappedObject

Mapped object, from withMappedFile

-> Integer

Position in file

-> Int

Size of mapped area

-> (Ptr a -> IO b)

Action

-> IO b 

Maps area into memory.

unmapViewOfFile :: Ptr a -> IO () #

c_MapViewOfFileEx :: HANDLE -> DWORD -> DWORD -> DWORD -> SIZE_T -> Ptr a -> IO (Ptr b) #