packages feed

Win32 2.6.2.1 → 2.7.0.0

raw patch · 4 files changed

+85/−19 lines, 4 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

- System.Win32: cP_ACP :: CodePage
- System.Win32: cP_MACCP :: CodePage
- System.Win32: cP_OEMCP :: CodePage
- System.Win32: c_LCMapString :: LCID -> LCMapFlags -> LPCTSTR -> Int -> LPCTSTR -> Int -> IO Int
- System.Win32: c_SetLocaleInfo :: LCID -> LCTYPE -> LPCTSTR -> IO Bool
- System.Win32: convertDefaultLocale :: LCID -> IO LCID
- System.Win32: getACP :: IO CodePage
- System.Win32: getOEMCP :: CodePage
- System.Win32: getSystemDefaultLCID :: LCID
- System.Win32: getSystemDefaultLangID :: LANGID
- System.Win32: getThreadLocale :: IO LCID
- System.Win32: getUserDefaultLCID :: LCID
- System.Win32: getUserDefaultLangID :: LANGID
- System.Win32: isValidCodePage :: CodePage -> IO Bool
- System.Win32: isValidLocale :: LCID -> LocaleTestFlags -> IO Bool
- System.Win32: lANG_AFRIKAANS :: PrimaryLANGID
- System.Win32: lANG_ALBANIAN :: PrimaryLANGID
- System.Win32: lANG_ARABIC :: PrimaryLANGID
- System.Win32: lANG_ARMENIAN :: PrimaryLANGID
- System.Win32: lANG_ASSAMESE :: PrimaryLANGID
- System.Win32: lANG_AZERI :: PrimaryLANGID
- System.Win32: lANG_BASQUE :: PrimaryLANGID
- System.Win32: lANG_BELARUSIAN :: PrimaryLANGID
- System.Win32: lANG_BENGALI :: PrimaryLANGID
- System.Win32: lANG_BULGARIAN :: PrimaryLANGID
- System.Win32: lANG_CATALAN :: PrimaryLANGID
- System.Win32: lANG_CHINESE :: PrimaryLANGID
- System.Win32: lANG_CROATIAN :: PrimaryLANGID
- System.Win32: lANG_CZECH :: PrimaryLANGID
- System.Win32: lANG_DANISH :: PrimaryLANGID
- System.Win32: lANG_DUTCH :: PrimaryLANGID
- System.Win32: lANG_ENGLISH :: PrimaryLANGID
- System.Win32: lANG_ESTONIAN :: PrimaryLANGID
- System.Win32: lANG_FAEROESE :: PrimaryLANGID
- System.Win32: lANG_FARSI :: PrimaryLANGID
- System.Win32: lANG_FINNISH :: PrimaryLANGID
- System.Win32: lANG_FRENCH :: PrimaryLANGID
- System.Win32: lANG_GEORGIAN :: PrimaryLANGID
- System.Win32: lANG_GERMAN :: PrimaryLANGID
- System.Win32: lANG_GREEK :: PrimaryLANGID
- System.Win32: lANG_GUJARATI :: PrimaryLANGID
- System.Win32: lANG_HEBREW :: PrimaryLANGID
- System.Win32: lANG_HINDI :: PrimaryLANGID
- System.Win32: lANG_HUNGARIAN :: PrimaryLANGID
- System.Win32: lANG_ICELANDIC :: PrimaryLANGID
- System.Win32: lANG_INDONESIAN :: PrimaryLANGID
- System.Win32: lANG_ITALIAN :: PrimaryLANGID
- System.Win32: lANG_JAPANESE :: PrimaryLANGID
- System.Win32: lANG_KANNADA :: PrimaryLANGID
- System.Win32: lANG_KASHMIRI :: PrimaryLANGID
- System.Win32: lANG_KAZAK :: PrimaryLANGID
- System.Win32: lANG_KONKANI :: PrimaryLANGID
- System.Win32: lANG_KOREAN :: PrimaryLANGID
- System.Win32: lANG_LATVIAN :: PrimaryLANGID
- System.Win32: lANG_LITHUANIAN :: PrimaryLANGID
- System.Win32: lANG_MACEDONIAN :: PrimaryLANGID
- System.Win32: lANG_MALAY :: PrimaryLANGID
- System.Win32: lANG_MALAYALAM :: PrimaryLANGID
- System.Win32: lANG_MANIPURI :: PrimaryLANGID
- System.Win32: lANG_MARATHI :: PrimaryLANGID
- System.Win32: lANG_NEPALI :: PrimaryLANGID
- System.Win32: lANG_NEUTRAL :: PrimaryLANGID
- System.Win32: lANG_NORWEGIAN :: PrimaryLANGID
- System.Win32: lANG_ORIYA :: PrimaryLANGID
- System.Win32: lANG_POLISH :: PrimaryLANGID
- System.Win32: lANG_PORTUGUESE :: PrimaryLANGID
- System.Win32: lANG_PUNJABI :: PrimaryLANGID
- System.Win32: lANG_ROMANIAN :: PrimaryLANGID
- System.Win32: lANG_RUSSIAN :: PrimaryLANGID
- System.Win32: lANG_SANSKRIT :: PrimaryLANGID
- System.Win32: lANG_SERBIAN :: PrimaryLANGID
- System.Win32: lANG_SINDHI :: PrimaryLANGID
- System.Win32: lANG_SLOVAK :: PrimaryLANGID
- System.Win32: lANG_SLOVENIAN :: PrimaryLANGID
- System.Win32: lANG_SPANISH :: PrimaryLANGID
- System.Win32: lANG_SWAHILI :: PrimaryLANGID
- System.Win32: lANG_SWEDISH :: PrimaryLANGID
- System.Win32: lANG_TAMIL :: PrimaryLANGID
- System.Win32: lANG_TATAR :: PrimaryLANGID
- System.Win32: lANG_TELUGU :: PrimaryLANGID
- System.Win32: lANG_THAI :: PrimaryLANGID
- System.Win32: lANG_TURKISH :: PrimaryLANGID
- System.Win32: lANG_URDU :: PrimaryLANGID
- System.Win32: lANG_UZBEK :: PrimaryLANGID
- System.Win32: lANG_VIETNAMESE :: PrimaryLANGID
- System.Win32: lCID_INSTALLED :: LocaleTestFlags
- System.Win32: lCID_SUPPORTED :: LocaleTestFlags
- System.Win32: lCMAP_BYTEREV :: LCMapFlags
- System.Win32: lCMAP_FULLWIDTH :: LCMapFlags
- System.Win32: lCMAP_HALFWIDTH :: LCMapFlags
- System.Win32: lCMAP_HIRAGANA :: LCMapFlags
- System.Win32: lCMAP_KATAKANA :: LCMapFlags
- System.Win32: lCMAP_LINGUISTIC_CASING :: LCMapFlags
- System.Win32: lCMAP_LOWERCASE :: LCMapFlags
- System.Win32: lCMAP_SIMPLIFIED_CHINESE :: LCMapFlags
- System.Win32: lCMAP_SORTKEY :: LCMapFlags
- System.Win32: lCMAP_TRADITIONAL_CHINESE :: LCMapFlags
- System.Win32: lCMAP_UPPERCASE :: LCMapFlags
- System.Win32: lCMapString :: LCID -> LCMapFlags -> String -> Int -> IO String
- System.Win32: lOCALE_ICALENDARTYPE :: LCTYPE
- System.Win32: lOCALE_ICURRDIGITS :: LCTYPE
- System.Win32: lOCALE_ICURRENCY :: LCTYPE
- System.Win32: lOCALE_IDIGITS :: LCTYPE
- System.Win32: lOCALE_IFIRSTDAYOFWEEK :: LCTYPE
- System.Win32: lOCALE_IFIRSTWEEKOFYEAR :: LCTYPE
- System.Win32: lOCALE_ILZERO :: LCTYPE
- System.Win32: lOCALE_IMEASURE :: LCTYPE
- System.Win32: lOCALE_INEGCURR :: LCTYPE
- System.Win32: lOCALE_INEGNUMBER :: LCTYPE
- System.Win32: lOCALE_ITIME :: LCTYPE
- System.Win32: lOCALE_NEUTRAL :: LCID
- System.Win32: lOCALE_S1159 :: LCTYPE
- System.Win32: lOCALE_S2359 :: LCTYPE
- System.Win32: lOCALE_SCURRENCY :: LCTYPE
- System.Win32: lOCALE_SDATE :: LCTYPE
- System.Win32: lOCALE_SDECIMAL :: LCTYPE
- System.Win32: lOCALE_SGROUPING :: LCTYPE
- System.Win32: lOCALE_SLIST :: LCTYPE
- System.Win32: lOCALE_SLONGDATE :: LCTYPE
- System.Win32: lOCALE_SMONDECIMALSEP :: LCTYPE
- System.Win32: lOCALE_SMONGROUPING :: LCTYPE
- System.Win32: lOCALE_SMONTHOUSANDSEP :: LCTYPE
- System.Win32: lOCALE_SNEGATIVESIGN :: LCTYPE
- System.Win32: lOCALE_SPOSITIVESIGN :: LCTYPE
- System.Win32: lOCALE_SSHORTDATE :: LCTYPE
- System.Win32: lOCALE_STHOUSAND :: LCTYPE
- System.Win32: lOCALE_STIME :: LCTYPE
- System.Win32: lOCALE_STIMEFORMAT :: LCTYPE
- System.Win32: lOCALE_SYSTEM_DEFAULT :: LCID
- System.Win32: lOCALE_USER_DEFAULT :: LCID
- System.Win32: maybeNum :: Num a => Maybe a -> a
- System.Win32: maybePtr :: Maybe (Ptr a) -> Ptr a
- System.Win32: multiByteToWideChar :: CodePage -> DWORD -> LPCSTR -> CInt -> LPWSTR -> CInt -> IO CInt
- System.Win32: nORM_IGNORECASE :: LCMapFlags
- System.Win32: nORM_IGNOREKANATYPE :: LCMapFlags
- System.Win32: nORM_IGNORENONSPACE :: LCMapFlags
- System.Win32: nORM_IGNORESYMBOLS :: LCMapFlags
- System.Win32: nORM_IGNOREWIDTH :: LCMapFlags
- System.Win32: numToMaybe :: (Eq a, Num a) => a -> Maybe a
- System.Win32: peekMaybe :: Storable a => Ptr a -> IO (Maybe a)
- System.Win32: ptrToMaybe :: Ptr a -> Maybe (Ptr a)
- System.Win32: sORT_CHINESE_BIG5 :: SortID
- System.Win32: sORT_CHINESE_UNICODE :: SortID
- System.Win32: sORT_DEFAULT :: SortID
- System.Win32: sORT_JAPANESE_UNICODE :: SortID
- System.Win32: sORT_JAPANESE_XJIS :: SortID
- System.Win32: sORT_KOREAN_KSC :: SortID
- System.Win32: sORT_KOREAN_UNICODE :: SortID
- System.Win32: sORT_STRINGSORT :: LCMapFlags
- System.Win32: sUBLANG_ARABIC_ALGERIA :: SubLANGID
- System.Win32: sUBLANG_ARABIC_BAHRAIN :: SubLANGID
- System.Win32: sUBLANG_ARABIC_EGYPT :: SubLANGID
- System.Win32: sUBLANG_ARABIC_IRAQ :: SubLANGID
- System.Win32: sUBLANG_ARABIC_JORDAN :: SubLANGID
- System.Win32: sUBLANG_ARABIC_KUWAIT :: SubLANGID
- System.Win32: sUBLANG_ARABIC_LEBANON :: SubLANGID
- System.Win32: sUBLANG_ARABIC_LIBYA :: SubLANGID
- System.Win32: sUBLANG_ARABIC_MOROCCO :: SubLANGID
- System.Win32: sUBLANG_ARABIC_OMAN :: SubLANGID
- System.Win32: sUBLANG_ARABIC_QATAR :: SubLANGID
- System.Win32: sUBLANG_ARABIC_SAUDI_ARABIA :: SubLANGID
- System.Win32: sUBLANG_ARABIC_SYRIA :: SubLANGID
- System.Win32: sUBLANG_ARABIC_TUNISIA :: SubLANGID
- System.Win32: sUBLANG_ARABIC_UAE :: SubLANGID
- System.Win32: sUBLANG_ARABIC_YEMEN :: SubLANGID
- System.Win32: sUBLANG_AZERI_CYRILLIC :: SubLANGID
- System.Win32: sUBLANG_AZERI_LATIN :: SubLANGID
- System.Win32: sUBLANG_CHINESE_HONGKONG :: SubLANGID
- System.Win32: sUBLANG_CHINESE_MACAU :: SubLANGID
- System.Win32: sUBLANG_CHINESE_SIMPLIFIED :: SubLANGID
- System.Win32: sUBLANG_CHINESE_SINGAPORE :: SubLANGID
- System.Win32: sUBLANG_CHINESE_TRADITIONAL :: SubLANGID
- System.Win32: sUBLANG_DEFAULT :: SubLANGID
- System.Win32: sUBLANG_DUTCH :: SubLANGID
- System.Win32: sUBLANG_DUTCH_BELGIAN :: SubLANGID
- System.Win32: sUBLANG_ENGLISH_AUS :: SubLANGID
- System.Win32: sUBLANG_ENGLISH_BELIZE :: SubLANGID
- System.Win32: sUBLANG_ENGLISH_CAN :: SubLANGID
- System.Win32: sUBLANG_ENGLISH_CARIBBEAN :: SubLANGID
- System.Win32: sUBLANG_ENGLISH_EIRE :: SubLANGID
- System.Win32: sUBLANG_ENGLISH_JAMAICA :: SubLANGID
- System.Win32: sUBLANG_ENGLISH_NZ :: SubLANGID
- System.Win32: sUBLANG_ENGLISH_PHILIPPINES :: SubLANGID
- System.Win32: sUBLANG_ENGLISH_SOUTH_AFRICA :: SubLANGID
- System.Win32: sUBLANG_ENGLISH_TRINIDAD :: SubLANGID
- System.Win32: sUBLANG_ENGLISH_UK :: SubLANGID
- System.Win32: sUBLANG_ENGLISH_US :: SubLANGID
- System.Win32: sUBLANG_ENGLISH_ZIMBABWE :: SubLANGID
- System.Win32: sUBLANG_FRENCH :: SubLANGID
- System.Win32: sUBLANG_FRENCH_BELGIAN :: SubLANGID
- System.Win32: sUBLANG_FRENCH_CANADIAN :: SubLANGID
- System.Win32: sUBLANG_FRENCH_LUXEMBOURG :: SubLANGID
- System.Win32: sUBLANG_FRENCH_MONACO :: SubLANGID
- System.Win32: sUBLANG_FRENCH_SWISS :: SubLANGID
- System.Win32: sUBLANG_GERMAN :: SubLANGID
- System.Win32: sUBLANG_GERMAN_AUSTRIAN :: SubLANGID
- System.Win32: sUBLANG_GERMAN_LIECHTENSTEIN :: SubLANGID
- System.Win32: sUBLANG_GERMAN_LUXEMBOURG :: SubLANGID
- System.Win32: sUBLANG_GERMAN_SWISS :: SubLANGID
- System.Win32: sUBLANG_ITALIAN :: SubLANGID
- System.Win32: sUBLANG_ITALIAN_SWISS :: SubLANGID
- System.Win32: sUBLANG_KASHMIRI_INDIA :: SubLANGID
- System.Win32: sUBLANG_KOREAN :: SubLANGID
- System.Win32: sUBLANG_LITHUANIAN :: SubLANGID
- System.Win32: sUBLANG_MALAY_BRUNEI_DARUSSALAM :: SubLANGID
- System.Win32: sUBLANG_MALAY_MALAYSIA :: SubLANGID
- System.Win32: sUBLANG_NEPALI_INDIA :: SubLANGID
- System.Win32: sUBLANG_NEUTRAL :: SubLANGID
- System.Win32: sUBLANG_NORWEGIAN_BOKMAL :: SubLANGID
- System.Win32: sUBLANG_NORWEGIAN_NYNORSK :: SubLANGID
- System.Win32: sUBLANG_PORTUGUESE :: SubLANGID
- System.Win32: sUBLANG_PORTUGUESE_BRAZILIAN :: SubLANGID
- System.Win32: sUBLANG_SERBIAN_CYRILLIC :: SubLANGID
- System.Win32: sUBLANG_SERBIAN_LATIN :: SubLANGID
- System.Win32: sUBLANG_SPANISH :: SubLANGID
- System.Win32: sUBLANG_SPANISH_ARGENTINA :: SubLANGID
- System.Win32: sUBLANG_SPANISH_BOLIVIA :: SubLANGID
- System.Win32: sUBLANG_SPANISH_CHILE :: SubLANGID
- System.Win32: sUBLANG_SPANISH_COLOMBIA :: SubLANGID
- System.Win32: sUBLANG_SPANISH_COSTA_RICA :: SubLANGID
- System.Win32: sUBLANG_SPANISH_DOMINICAN_REPUBLIC :: SubLANGID
- System.Win32: sUBLANG_SPANISH_ECUADOR :: SubLANGID
- System.Win32: sUBLANG_SPANISH_EL_SALVADOR :: SubLANGID
- System.Win32: sUBLANG_SPANISH_GUATEMALA :: SubLANGID
- System.Win32: sUBLANG_SPANISH_HONDURAS :: SubLANGID
- System.Win32: sUBLANG_SPANISH_MEXICAN :: SubLANGID
- System.Win32: sUBLANG_SPANISH_MODERN :: SubLANGID
- System.Win32: sUBLANG_SPANISH_NICARAGUA :: SubLANGID
- System.Win32: sUBLANG_SPANISH_PANAMA :: SubLANGID
- System.Win32: sUBLANG_SPANISH_PARAGUAY :: SubLANGID
- System.Win32: sUBLANG_SPANISH_PERU :: SubLANGID
- System.Win32: sUBLANG_SPANISH_PUERTO_RICO :: SubLANGID
- System.Win32: sUBLANG_SPANISH_URUGUAY :: SubLANGID
- System.Win32: sUBLANG_SPANISH_VENEZUELA :: SubLANGID
- System.Win32: sUBLANG_SWEDISH :: SubLANGID
- System.Win32: sUBLANG_SWEDISH_FINLAND :: SubLANGID
- System.Win32: sUBLANG_SYS_DEFAULT :: SubLANGID
- System.Win32: sUBLANG_URDU_INDIA :: SubLANGID
- System.Win32: sUBLANG_URDU_PAKISTAN :: SubLANGID
- System.Win32: sUBLANG_UZBEK_CYRILLIC :: SubLANGID
- System.Win32: sUBLANG_UZBEK_LATIN :: SubLANGID
- System.Win32: setLocaleInfo :: LCID -> LCTYPE -> String -> IO ()
- System.Win32: setThreadLocale :: LCID -> IO ()
- System.Win32: stringToUnicode :: CodePage -> String -> IO String
- System.Win32: try' :: Storable a => String -> (Ptr a -> PDWORD -> IO BOOL) -> DWORD -> IO [a]
- System.Win32: tryWithoutNull :: String -> (LPTSTR -> UINT -> IO UINT) -> UINT -> IO String
- System.Win32: type CodePage = UINT
- System.Win32: type LCMapFlags = DWORD
- System.Win32: type LCTYPE = UINT
- System.Win32: type LocaleTestFlags = DWORD
- System.Win32: withMaybe :: Storable a => Maybe a -> (Ptr a -> IO b) -> IO b
- System.Win32.Automation.Input: data MOUSEINPUT
- System.Win32.Automation.Input: mOUSEEVENTF_ABSOLUTE :: DWORD
- System.Win32.Automation.Input: mOUSEEVENTF_LEFTDOWN :: DWORD
- System.Win32.Automation.Input: mOUSEEVENTF_LEFTUP :: DWORD
- System.Win32.Automation.Input: mOUSEEVENTF_MIDDLEDOWN :: DWORD
- System.Win32.Automation.Input: mOUSEEVENTF_MIDDLEUP :: DWORD
- System.Win32.Automation.Input: mOUSEEVENTF_MOVE :: DWORD
- System.Win32.Automation.Input: mOUSEEVENTF_RIGHTDOWN :: DWORD
- System.Win32.Automation.Input: mOUSEEVENTF_RIGHTUP :: DWORD
- System.Win32.Automation.Input: mOUSEEVENTF_WHEEL :: DWORD
- System.Win32.Automation.Input: mOUSEEVENTF_XDOWN :: DWORD
- System.Win32.Automation.Input: mOUSEEVENTF_XUP :: DWORD
- System.Win32.Automation.Input: type PMOUSEINPUT = Ptr MOUSEINPUT
- System.Win32.Automation.Input: xBUTTON1 :: DWORD
- System.Win32.Automation.Input: xBUTTON2 :: DWORD
- System.Win32.Exception.Unsupported: instance GHC.Exception.Type.Exception System.Win32.Exception.Unsupported.Unsupported
+ System.Win32.Exception.Unsupported: instance GHC.Exception.Exception System.Win32.Exception.Unsupported.Unsupported
+ System.Win32.File: OVERLAPPED :: ULONG_PTR -> ULONG_PTR -> DWORD -> DWORD -> HANDLE -> OVERLAPPED
+ System.Win32.File: [ovl_hEvent] :: OVERLAPPED -> HANDLE
+ System.Win32.File: [ovl_internalHigh] :: OVERLAPPED -> ULONG_PTR
+ System.Win32.File: [ovl_internal] :: OVERLAPPED -> ULONG_PTR
+ System.Win32.File: [ovl_offsetHigh] :: OVERLAPPED -> DWORD
+ System.Win32.File: [ovl_offset] :: OVERLAPPED -> DWORD
+ System.Win32.File: c_LockFileEx :: HANDLE -> DWORD -> DWORD -> DWORD -> DWORD -> LPOVERLAPPED -> IO BOOL
+ System.Win32.File: c_UnlockFileEx :: HANDLE -> DWORD -> DWORD -> DWORD -> LPOVERLAPPED -> IO BOOL
+ System.Win32.File: data OVERLAPPED
+ System.Win32.File: instance Foreign.Storable.Storable System.Win32.File.OVERLAPPED
+ System.Win32.File: instance GHC.Show.Show System.Win32.File.OVERLAPPED
+ System.Win32.File: lOCKFILE_EXCLUSIVE_LOCK :: LockMode
+ System.Win32.File: lOCKFILE_FAIL_IMMEDIATELY :: LockMode
+ System.Win32.File: lockFile :: HANDLE -> LockMode -> DWORD64 -> DWORD64 -> IO BOOL
+ System.Win32.File: type LockMode = DWORD
+ System.Win32.File: unlockFile :: HANDLE -> DWORD64 -> DWORD64 -> IO BOOL
- Graphics.Win32.Dialogue: DIA_TEMPLATE :: Ptr DIA_TEMPLATE -> DIA_TEMPLATE
+ Graphics.Win32.Dialogue: DIA_TEMPLATE :: (Ptr DIA_TEMPLATE) -> DIA_TEMPLATE
- Graphics.Win32.Dialogue: DialogControl :: Int -> Int -> Int -> Int -> Either ResourceID String -> Either ResourceID String -> WindowStyle -> DWORD -> Int -> DialogControl
+ Graphics.Win32.Dialogue: DialogControl :: Int -> Int -> Int -> Int -> (Either ResourceID String) -> (Either ResourceID String) -> WindowStyle -> DWORD -> Int -> DialogControl
- Graphics.Win32.Dialogue: DialogTemplate :: Int -> Int -> Int -> Int -> WindowStyle -> DWORD -> Either ResourceID String -> Either ResourceID String -> Either ResourceID String -> Either ResourceID String -> Int -> [DialogControl] -> DialogTemplate
+ Graphics.Win32.Dialogue: DialogTemplate :: Int -> Int -> Int -> Int -> WindowStyle -> DWORD -> (Either ResourceID String) -> (Either ResourceID String) -> (Either ResourceID String) -> (Either ResourceID String) -> Int -> [DialogControl] -> DialogTemplate
- Graphics.Win32.Key: c_GetKeyboardLayoutList :: Int -> Ptr HKL -> IO UINT
+ Graphics.Win32.Key: c_GetKeyboardLayoutList :: Int -> (Ptr HKL) -> IO UINT
- System.Win32.DebugApi: peekP :: Storable a => PHANDLE -> ForeignAddress -> IO a
+ System.Win32.DebugApi: peekP :: (Storable a) => PHANDLE -> ForeignAddress -> IO a
- System.Win32.DebugApi: pokeP :: Storable a => PHANDLE -> ForeignAddress -> a -> IO ()
+ System.Win32.DebugApi: pokeP :: (Storable a) => PHANDLE -> ForeignAddress -> a -> IO ()
- System.Win32.File: FindData :: ForeignPtr WIN32_FIND_DATA -> FindData
+ System.Win32.File: FindData :: (ForeignPtr WIN32_FIND_DATA) -> FindData
- System.Win32.File: GET_FILEEX_INFO_LEVELS :: Word32 -> GET_FILEEX_INFO_LEVELS
+ System.Win32.File: GET_FILEEX_INFO_LEVELS :: (Word32) -> GET_FILEEX_INFO_LEVELS
- System.Win32.File: type LPOVERLAPPED = Ptr ()
+ System.Win32.File: type LPOVERLAPPED = Ptr OVERLAPPED
- System.Win32.SimpleMAPI: RecipResolve :: Maybe HWND -> MapiFlag -> String -> Maybe Recipient -> Recipient
+ System.Win32.SimpleMAPI: RecipResolve :: (Maybe HWND) -> MapiFlag -> String -> (Maybe Recipient) -> Recipient
- System.Win32.Types: nullPtr :: () => Ptr a
+ System.Win32.Types: nullPtr :: Ptr a
- System.Win32.Types: type DWORD_PTR = Ptr DWORD32
+ System.Win32.Types: type DWORD_PTR = ULONG_PTR
- System.Win32.Word: type DWORD_PTR = Ptr DWORD32
+ System.Win32.Word: type DWORD_PTR = ULONG_PTR

Files

System/Win32/File.hsc view
@@ -17,14 +17,7 @@ -- ----------------------------------------------------------------------------- -module System.Win32.File-{--        ( AccessMode, ShareMode, CreateMode, FileAttributeOrFlag-        , CreateFile, CloseHandle, DeleteFile, CopyFile-        , MoveFileFlag, MoveFile, MoveFileEx,-        )--}-where+module System.Win32.File where  import System.Win32.Types import System.Win32.Time@@ -227,6 +220,15 @@  ---------------------------------------------------------------- +type LockMode = DWORD++#{enum LockMode,+ , lOCKFILE_EXCLUSIVE_LOCK   = LOCKFILE_EXCLUSIVE_LOCK+ , lOCKFILE_FAIL_IMMEDIATELY = LOCKFILE_FAIL_IMMEDIATELY+ }++----------------------------------------------------------------+ newtype GET_FILEEX_INFO_LEVELS = GET_FILEEX_INFO_LEVELS (#type GET_FILEEX_INFO_LEVELS)     deriving (Eq, Ord) @@ -503,13 +505,34 @@ ----------------------------------------------------------------  -- No support for this yet---type OVERLAPPED =--- (DWORD,  -- Offset---  DWORD,  -- OffsetHigh---  HANDLE) -- hEvent+data OVERLAPPED+  = OVERLAPPED { ovl_internal     :: ULONG_PTR+               , ovl_internalHigh :: ULONG_PTR+               , ovl_offset       :: DWORD+               , ovl_offsetHigh   :: DWORD+               , ovl_hEvent       :: HANDLE+               } deriving (Show) -type LPOVERLAPPED = Ptr ()+instance Storable OVERLAPPED where+  sizeOf = const (#size OVERLAPPED)+  alignment _ = #alignment OVERLAPPED+  poke buf ad = do+      (#poke OVERLAPPED, Internal    ) buf (ovl_internal     ad)+      (#poke OVERLAPPED, InternalHigh) buf (ovl_internalHigh ad)+      (#poke OVERLAPPED, Offset      ) buf (ovl_offset       ad)+      (#poke OVERLAPPED, OffsetHigh  ) buf (ovl_offsetHigh   ad)+      (#poke OVERLAPPED, hEvent      ) buf (ovl_hEvent       ad) +  peek buf = do+      intnl      <- (#peek OVERLAPPED, Internal    ) buf+      intnl_high <- (#peek OVERLAPPED, InternalHigh) buf+      off        <- (#peek OVERLAPPED, Offset      ) buf+      off_high   <- (#peek OVERLAPPED, OffsetHigh  ) buf+      hevnt      <- (#peek OVERLAPPED, hEvent      ) buf+      return $ OVERLAPPED intnl intnl_high off off_high hevnt++type LPOVERLAPPED = Ptr OVERLAPPED+ type MbLPOVERLAPPED = Maybe LPOVERLAPPED  --Sigh - I give up & prefix win32_ to the next two to avoid@@ -672,6 +695,48 @@   failIfFalse_ "SetVolumeLabel" $ c_SetVolumeLabel c_path c_name foreign import WINDOWS_CCONV unsafe "windows.h SetVolumeLabelW"   c_SetVolumeLabel :: LPCTSTR -> LPCTSTR -> IO Bool++----------------------------------------------------------------+-- File locks+----------------------------------------------------------------++-- | Locks a given range in a file handle, To lock an entire file+--   use 0xFFFFFFFFFFFFFFFF for size and 0 for offset.+lockFile :: HANDLE   -- ^ CreateFile handle+         -> LockMode -- ^ Locking mode+         -> DWORD64  -- ^ Size of region to lock+         -> DWORD64  -- ^ Beginning offset of file to lock+         -> IO BOOL  -- ^ Indicates if locking was successful, if not query+                     --   getLastError.+lockFile hwnd mode size f_offset =+  do let s_low = fromIntegral (size .&. 0xFFFFFFFF)+         s_hi  = fromIntegral (size `shiftR` 32)+         o_low = fromIntegral (f_offset .&. 0xFFFFFFFF)+         o_hi  = fromIntegral (f_offset `shiftR` 32)+         ovlp  = OVERLAPPED 0 0 o_low o_hi nullPtr+     with ovlp $ \ptr -> c_LockFileEx hwnd mode 0 s_low s_hi ptr++foreign import WINDOWS_CCONV unsafe "LockFileEx"+  c_LockFileEx :: HANDLE -> DWORD -> DWORD -> DWORD -> DWORD -> LPOVERLAPPED+               -> IO BOOL++-- | Unlocks a given range in a file handle, To unlock an entire file+--   use 0xFFFFFFFFFFFFFFFF for size and 0 for offset.+unlockFile :: HANDLE  -- ^ CreateFile handle+           -> DWORD64 -- ^ Size of region to unlock+           -> DWORD64 -- ^ Beginning offset of file to unlock+           -> IO BOOL -- ^ Indicates if unlocking was successful, if not query+                      --   getLastError.+unlockFile hwnd size f_offset =+  do let s_low = fromIntegral (size .&. 0xFFFFFFFF)+         s_hi  = fromIntegral (size `shiftR` 32)+         o_low = fromIntegral (f_offset .&. 0xFFFFFFFF)+         o_hi  = fromIntegral (f_offset `shiftR` 32)+         ovlp  = OVERLAPPED 0 0 o_low o_hi nullPtr+     with ovlp $ \ptr -> c_UnlockFileEx hwnd 0 s_low s_hi ptr++foreign import WINDOWS_CCONV unsafe "UnlockFileEx"+  c_UnlockFileEx :: HANDLE -> DWORD -> DWORD -> DWORD -> LPOVERLAPPED -> IO BOOL  ---------------------------------------------------------------- -- End
System/Win32/Types.hsc view
@@ -94,12 +94,12 @@ type ULONG64       = Word64 type SHORT         = Int16 -type DWORD_PTR     = Ptr DWORD32 type INT_PTR       = Ptr CInt type ULONG         = Word32 type UINT_PTR      = Word type LONG_PTR      = CIntPtr type ULONG_PTR     = CUIntPtr+type DWORD_PTR     = ULONG_PTR #ifdef _WIN64 type HALF_PTR      = Ptr INT32 #else
Win32.cabal view
@@ -1,5 +1,5 @@ name:		Win32-version:	2.6.2.1+version:	2.7.0.0 license:	BSD3 license-file:	LICENSE author:		Alastair Reid, shelarcy, Tamar Christina@@ -13,8 +13,8 @@ build-type:     Simple cabal-version:  >=1.10 extra-source-files:-    include/diatemp.h include/dumpBMP.h include/ellipse.h include/errors.h-    include/Win32Aux.h include/win32debug.h include/alignment.h+	include/diatemp.h include/dumpBMP.h include/ellipse.h include/errors.h+	include/Win32Aux.h include/win32debug.h include/alignment.h         changelog.md  Library
changelog.md view
@@ -1,8 +1,9 @@ # Changelog for [`Win32` package](http://hackage.haskell.org/package/Win32) -## 2.6.2.1 *August 2021*+## 2.7.0.0 *March 2018* -* Fix `registery001` test (See #181)+* Fixed `DWORD_PTR` type (See #99)+* Add `lockFile` and `unlockFile` (See #103)  ## 2.6.2.0 *December 2017*