System.Win32.Registry

Win32-2.3.1.0: A binding to part of the Win32 library

Copyright | (c) Alastair Reid, 1997-2003
License | BSD-style (see the file libraries/base/LICENSE)
Maintainer | Esa Ilari Vuokko <ei@vuokko.info>
Stability | provisional
Portability | portable
Safe Haskell | Trustworthy
Language | Haskell98

System.Win32.Registry

Description

A collection of FFI declarations for accessing the Win32 registry.

# Documentation

hKEY_CLASSES_ROOT :: HKEY

hKEY_CURRENT_CONFIG :: HKEY

hKEY_CURRENT_USER :: HKEY

hKEY_LOCAL_MACHINE :: HKEY

hKEY_USERS :: HKEY

regCloseKey :: HKEY -> IO ()

c_RegCloseKey :: PKEY -> IO ErrCode

regConnectRegistry :: Maybe String -> HKEY -> IO HKEY

c_RegConnectRegistry :: LPCTSTR -> PKEY -> Ptr PKEY -> IO ErrCode

regCreateKey :: HKEY -> String -> IO HKEY

c_RegCreateKey :: PKEY -> LPCTSTR -> Ptr PKEY -> IO ErrCode

type RegCreateOptions = DWORD

rEG_OPTION_NON_VOLATILE :: RegCreateOptions

rEG_OPTION_VOLATILE :: RegCreateOptions

type REGSAM = Word32

kEY_ALL_ACCESS :: REGSAM

kEY_CREATE_LINK :: REGSAM

kEY_CREATE_SUB_KEY :: REGSAM

kEY_ENUMERATE_SUB_KEYS :: REGSAM

kEY_EXECUTE :: REGSAM

kEY_NOTIFY :: REGSAM

kEY_QUERY_VALUE :: REGSAM

regCreateKeyEx :: HKEY -> String -> String -> RegCreateOptions -> REGSAM -> Maybe LPSECURITY_ATTRIBUTES -> IO (HKEY, Bool)

kEY_READ :: REGSAM

kEY_SET_VALUE :: REGSAM

kEY_WRITE :: REGSAM

c_RegCreateKeyEx :: PKEY -> LPCTSTR -> DWORD -> LPCTSTR -> RegCreateOptions -> REGSAM -> LPSECURITY_ATTRIBUTES -> Ptr PKEY -> Ptr DWORD -> IO ErrCode

regDeleteKey :: HKEY -> String -> IO ()

c_RegDeleteKey :: PKEY -> LPCTSTR -> IO ErrCode

regDeleteValue :: HKEY -> String -> IO ()

c_RegDeleteValue :: PKEY -> LPCTSTR -> IO ErrCode

mallocWideChars :: Int -> IO (Ptr a)

regEnumKeys :: HKEY -> IO [String]

regEnumKeyVals :: HKEY -> IO [(String, String, RegValueType)]

regEnumKey :: HKEY -> DWORD -> LPTSTR -> DWORD -> IO (String, Int)

c_RegEnumKey :: PKEY -> DWORD -> LPTSTR -> DWORD -> IO ErrCode

regEnumValue :: HKEY -> DWORD -> LPTSTR -> DWORD -> LPBYTE -> DWORD -> IO (RegValueType, String, Int)

c_RegEnumValue :: PKEY -> DWORD -> LPTSTR -> Ptr DWORD -> Ptr DWORD -> Ptr DWORD -> LPBYTE -> Ptr DWORD -> IO ErrCode

eRROR_NO_MORE_ITEMS :: ErrCode

regFlushKey :: HKEY -> IO ()

c_RegFlushKey :: PKEY -> IO ErrCode

regLoadKey :: HKEY -> String -> String -> IO ()

c_RegLoadKey :: PKEY -> LPCTSTR -> LPCTSTR -> IO ErrCode

type RegNotifyOptions = DWORD

rEG_NOTIFY_CHANGE_NAME :: RegNotifyOptions

rEG_NOTIFY_CHANGE_ATTRIBUTES :: RegNotifyOptions

rEG_NOTIFY_CHANGE_LAST_SET :: RegNotifyOptions

rEG_NOTIFY_CHANGE_SECURITY :: RegNotifyOptions

regNotifyChangeKeyValue :: HKEY -> Bool -> RegNotifyOptions -> HANDLE -> Bool -> IO ()

c_RegNotifyChangeKeyValue :: PKEY -> Bool -> RegNotifyOptions -> HANDLE -> Bool -> IO ErrCode

regOpenKey :: HKEY -> String -> IO HKEY

c_RegOpenKey :: PKEY -> LPCTSTR -> Ptr PKEY -> IO ErrCode

regOpenKeyEx :: HKEY -> String -> REGSAM -> IO HKEY

c_RegOpenKeyEx :: PKEY -> LPCTSTR -> DWORD -> REGSAM -> Ptr PKEY -> IO ErrCode

data RegInfoKey

Constructors

RegInfoKey |
Fields class_string :: String class_id :: Int subkeys :: Word32 max_subkey_len :: Word32 max_class_len :: Word32 values :: Word32 max_value_name_len :: Word32 max_value_len :: Word32 sec_len :: Int lastWrite_lo :: Word32 lastWrite_hi :: Word32

regQueryInfoKey :: HKEY -> IO RegInfoKey

c_RegQueryInfoKey :: PKEY -> LPTSTR -> Ptr DWORD -> Ptr DWORD -> Ptr DWORD -> Ptr DWORD -> Ptr DWORD -> Ptr DWORD -> Ptr DWORD -> Ptr DWORD -> Ptr DWORD -> Ptr FILETIME -> IO ErrCode

regQueryValueKey :: HKEY -> Maybe String -> IO String

c_RegQueryValue :: PKEY -> LPCTSTR -> LPTSTR -> Ptr LONG -> IO ErrCode

regQueryValue :: HKEY -> Maybe String -> IO String

regQueryValueEx :: HKEY -> String -> LPBYTE -> Int -> IO RegValueType

c_RegQueryValueEx :: PKEY -> LPCTSTR -> Ptr DWORD -> Ptr DWORD -> LPBYTE -> Ptr DWORD -> IO ErrCode

regReplaceKey :: HKEY -> String -> String -> String -> IO ()

c_RegReplaceKey :: PKEY -> LPCTSTR -> LPCTSTR -> LPCTSTR -> IO ErrCode

type RegRestoreFlags = DWORD

rEG_WHOLE_HIVE_VOLATILE :: RegRestoreFlags

rEG_REFRESH_HIVE :: RegRestoreFlags

rEG_NO_LAZY_FLUSH :: RegRestoreFlags

regRestoreKey :: HKEY -> String -> RegRestoreFlags -> IO ()

c_RegRestoreKey :: PKEY -> LPCTSTR -> RegRestoreFlags -> IO ErrCode

regSaveKey :: HKEY -> String -> Maybe LPSECURITY_ATTRIBUTES -> IO ()

c_RegSaveKey :: PKEY -> LPCTSTR -> LPSECURITY_ATTRIBUTES -> IO ErrCode

regSetValue :: HKEY -> String -> String -> IO ()

c_RegSetValue :: PKEY -> LPCTSTR -> DWORD -> LPCTSTR -> Int -> IO ErrCode

type RegValueType = DWORD

rEG_BINARY :: RegValueType

rEG_DWORD :: RegValueType

rEG_DWORD_LITTLE_ENDIAN :: RegValueType

rEG_DWORD_BIG_ENDIAN :: RegValueType

rEG_EXPAND_SZ :: RegValueType

rEG_LINK :: RegValueType

rEG_MULTI_SZ :: RegValueType

rEG_NONE :: RegValueType

rEG_RESOURCE_LIST :: RegValueType

regSetStringValue :: HKEY -> String -> String -> IO ()

rEG_SZ :: RegValueType

regSetValueEx :: HKEY -> String -> RegValueType -> LPTSTR -> Int -> IO ()

c_RegSetValueEx :: PKEY -> LPCTSTR -> DWORD -> RegValueType -> LPTSTR -> Int -> IO ErrCode

regUnLoadKey :: HKEY -> String -> IO ()

c_RegUnLoadKey :: PKEY -> LPCTSTR -> IO ErrCode