Paste: ffi first steps

Author: randy7
Mode: factor
Date: Tue, 7 Apr 2009 17:35:36
Plain Text |
USING: ;
IN: reg

: with-registry-key ( quot -- ... ) ??????
 ..open [ quot ] ..close... ;


LIBRARY: advapi32
! all reg* advapi functions from msdn

FUNCTION: LONG RegDisablePredefinedCache ( void ) ;

FUNCTION: LONG RegDisablePredefinedCacheEx ( void ) ;

FUNCTION: LONG RegLoadAppKey ( LPCTSTR lpFile, PHKEY phkResult, REGSAM samDesired, DWORD dwOptions, DWORD Reserved ) ;

FUNCTION: LONG RegOpenCurrentUser ( REGSAM samDesired, PHKEY phkResult ) ;

FUNCTION: LONG RegOpenUserClassesRoot ( HANDLE hToken, DWORD dwOptions, REGSAM samDesired, PHKEY phkResult ) ;

! these take a key as one of the parameters: (I chose the unicode version of the function if there was one.)

FUNCTION: LONG RegQueryValueExW ( HKEY hKey, LPCTSTR lpValueName, LPDWORD lpReserved, LPDWORD lpType,
          LPBYTE lpData, LPDWORD lpcbData ) ;
 
FUNCTION: LONG RegCreateKeyExW ( HKEY hKey, LPCTSTR lpSubKey, DWORD Reserved, LPTSTR lpClass,
          DWORD dwOptions, REGSAM samDesired, LPSECURITY_ATTRIBUTES lpSecurityAttributes,
          PHKEY phkResult, LPDWORD lpdwDisposition ) ;
          
FUNCTION: LONG RegCloseKey ( HKEY hKey ) ;

FUNCTION: LONG RegConnectRegistryW ( LPCTSTR lpMachineName, HKEY hKey, PHKEY phkResult ) ;

FUNCTION: LONG RegCopyTreeW ( HKEY hKeySrc, LPCTSTR lpSubKey, HKEY hKeyDest ) ;

FUNCTION: LONG RegCreateKeyW ( HKEY hKey, LPCTSTR lpSubKey, PHKEY phkResult ) ;

FUNCTION: LONG RegCreateKeyExW ( HKEY hKey, LPCTSTR lpSubKey, DWORD Reserved, LPTSTR lpClass, DWORD dwOptions,
          REGSAM samDesired, LPSECURITY_ATTRIBUTES lpSecurityAttributes, PHKEY phkResult, LPDWORD lpdwDisposition ) ;
          
FUNCTION: LONG RegCreateKeyTransactedW ( HKEY hKey, LPCTSTR lpSubKey, DWORD Reserved, LPTSTR lpClass, DWORD dwOptions, 
          REGSAM samDesired, const LPSECURITY_ATTRIBUTES lpSecurityAttributes, PHKEY phkResult, LPDWORD lpdwDisposition,
          HANDLE hTransaction, PVOID pExtendedParemeter ) ;
          
FUNCTION: LONG RegDeleteKeyW ( HKEY hKey, LPCTSTR lpSubKey ) ;

FUNCTION: LONG RegDeleteKeyExW ( HKEY hKey, LPCTSTR lpSubKey, REGSAM samDesired, DWORD Reserved ) ;

FUNCTION: LONG RegDeleteKeyTransactedW ( HKEY hKey, LPCTSTR lpSubKey, REGSAM samDesired, DWORD Reserved, HANDLE hTransaction,
          PVOID pExtendedParameter ) ;
          
FUNCTION: LONG RegDeleteKeyValueW ( HKEY hKey, LPCTSTR lpSubKey, LPCTSTR lpValueName ) ;

FUNCTION: LONG RegDeleteTreeW ( HKEY hKey, LPCTSTR lpSubKey ) ;

FUNCTION: LONG RegDeleteValueW ( HKEY hKey, LPCTSTR lpValueName ) ;


FUNCTION: LONG RegDisableReflectionKey ( HKEY hBase ) ;

FUNCTION: LONG RegEnableReflectionKey ( HKEY hBase ) ;

FUNCTION: LONG RegEnumKeyW ( HKEY hKey, DWORD dwIndex, LPTSTR lpName, DWORD cchName ) ;

FUNCTION: LONG RegEnumKeyExW ( HKEY hKey, DWORD dwIndex, LPTSTR lpName, LPDWORD lpcName, LPDWORD lpReserved, LPTSTR lpClass,
          LPDWORD lpcClass, PFILETIME lpftLastWriteTime ) ;
          
FUNCTION: LONG RegEnumValueW ( HKEY hKey, DWORD dwIndex, LPTSTR lpValueName, LPDWORD lpcchValueName, LPDWORD lpReserved,
          LPDWORD lpType, LPBYTE lpData, LPDWORD lpcbData ) ;
          
FUNCTION: LONG RegFlushKeyW ( HKEY hKey ) ;

FUNCTION: LONG RegGetValueW ( HKEY hkey, LPCTSTR lpSubKey, LPCTSTR lpValue, DWORD dwFlags, LPDWORD pdwType, PVOID pvData,
          LPDWORD pcbData ) ;

FUNCTION: LONG RegLoadKeyW ( HKEY hKey, LPCTSTR lpSubKey, LPCTSTR lpFile ) ;

FUNCTION: LONG RegLoadMUIStringW ( HKEY hKey, LPCTSTR pszValue, LPTSTR pszOutBuf, DWORD cbOutBuf, LPDWORD pcbData, DWORD Flags,
          LPCTSTR pszDirectory ) ;
          
FUNCTION: LONG RegNotifyChangeKeyValue ( HKEY hKey, BOOL bWatchSubtree, DWORD dwNotifyFilter, HANDLE hEvent, BOOL fAsynchronous ) ;

FUNCTION: LONG RegOpenKeyW ( HKEY hKey, LPCTSTR lpSubKey, PHKEY phkResult ) ;

FUNCTION: LONG RegOpenKeyExW ( HKEY hKey, LPCTSTR lpSubKey, DWORD ulOptions, REGSAM samDesired, PHKEY phkResult ) ;

FUNCTION: LONG RegOpenKeyTransactedW ( HKEY hKey, LPCTSTR lpSubKey, DWORD ulOptions, REGSAM samDesired, PHKEY phkResult, 
          HANDLE hTransaction, PVOID pExtendedParameter ) ;

FUNCTION: LONG RegOverridePredefKey ( HKEY hKey, HKEY hNewHKey ) ;

FUNCTION: LONG RegQueryInfoKeyW ( HKEY hKey, LPTSTR lpClass, LPDWORD lpcClass, LPDWORD lpReserved, LPDWORD lpcSubKeys, 
          LPDWORD lpcMaxSubKeyLen, LPDWORD lpcMaxClassLen, LPDWORD lpcValues, LPDWORD lpcMaxValueNameLen, LPDWORD lpcMaxValueLen, 
          LPDWORD lpcbSecurityDescriptor, PFILETIME lpftLastWriteTime ) ;

FUNCTION: LONG RegQueryMultipleValuesW ( HKEY hKey, PVALENT val_list, DWORD num_vals, LPTSTR lpValueBuf, LPDWORD ldwTotsize ) ;

FUNCTION: LONG RegQueryReflectionKey ( HKEY hBase, BOOL *bIsReflectionDisabled ) ;

FUNCTION: LONG RegQueryValueW ( HKEY hKey, LPCTSTR lpSubKey, LPTSTR lpValue, PLONG lpcbValue ) ;

FUNCTION: LONG RegQueryValueExW ( HKEY hKey, LPCTSTR lpValueName, LPDWORD lpReserved, LPDWORD lpType, LPBYTE lpData, LPDWORD lpcbData ) ;

FUNCTION: LONG RegReplaceKeyW ( HKEY hKey, LPCTSTR lpSubKey, LPCTSTR lpNewFile, LPCTSTR lpOldFile ) ;

FUNCTION: LONG RegRestoreKeyW ( HKEY hKey, LPCTSTR lpFile, DWORD dwFlags ) ;

FUNCTION: LONG RegSaveKeyW ( HKEY hKey, LPCTSTR lpFile, LPSECURITY_ATTRIBUTES lpSecurityAttributes ) ;

FUNCTION: LONG RegSaveKeyExW ( HKEY hKey, LPCTSTR lpFile, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD Flags ) ;

FUNCTION: LONG RegSetKeyValueW ( HKEY hKey, LPCTSTR lpSubKey, LPCTSTR lpValueName, DWORD dwType, LPCVOID lpData, DWORD cbData ) ;

FUNCTION: LONG RegSetValueW ( HKEY hKey, LPCTSTR lpSubKey, DWORD dwType, LPCTSTR lpData, DWORD cbData ) ;

FUNCTION: LONG RegSetValueExW ( HKEY hKey, LPCTSTR lpValueName, DWORD Reserved, DWORD dwType, const BYTE *lpData, DWORD cbData ) ;

FUNCTION: LONG RegUnLoadKeyW ( HKEY hKey, LPCTSTR lpSubKey ) ;

New Annotation

Summary:
Author:
Mode:
Body: