|
|
/*++
Module Name:
registry.h
Abstract:
Prototypes, etc., for registry.c
Author:
Venkatraman Kudallur (venkatk) ( Ripped off from wininet ) Revision History:
3-10-2000 venkatk Created
--*/
#ifndef _REGISTRY_H_
#define _REGISTRY_H_ 1
#if defined(__cplusplus)
extern "C" { #endif
#ifdef ENABLE_DEBUG
#define INTERNET_POLICY_KEY "SOFTWARE\\Policies\\Microsoft\\Windows\\CurrentVersion\\Internet Settings"
//
// prototypes
//
DWORD OpenInternetSettingsKey( VOID );
DWORD CloseInternetSettingsKey( VOID );
DWORD GetMyEmailName( OUT LPSTR EmailName, IN OUT LPDWORD Length );
DWORD GetMyDomainName( OUT LPSTR DomainName, IN OUT LPDWORD Length );
BOOL GetFileExtensionFromMimeType( IN LPCSTR lpszMimeType, IN DWORD dwMimeLen, IN LPSTR lpszFileExtension, IN OUT LPDWORD lpdwLen );
DWORD InternetDeleteRegistryValue( IN LPSTR ParameterName );
DWORD InternetReadRegistryDword( IN LPCSTR ParameterName, OUT LPDWORD ParameterValue );
DWORD InternetCacheReadRegistryDword( IN LPCSTR ParameterName, OUT LPDWORD ParameterValue );
DWORD InternetWriteRegistryDword( IN LPCSTR ParameterName, IN DWORD ParameterValue );
DWORD InternetReadRegistryDwordKey( IN HKEY ParameterKey, IN LPCSTR ParameterName, OUT LPDWORD ParameterValue );
DWORD InternetReadRegistryString( IN LPCSTR ParameterName, OUT LPSTR ParameterValue, IN OUT LPDWORD ParameterLength );
DWORD ReadRegistryDword( IN HKEY Key, IN LPCSTR ParameterName, OUT LPDWORD ParameterValue );
DWORD InternetWriteRegistryString( IN LPCSTR ParameterName, IN LPSTR ParameterValue );
DWORD CreateMimeExclusionTableForCache(VOID);
DWORD CreateHeaderExclusionTableForCache(VOID);
VOID DestroyMimeExclusionTableForCache(VOID);
VOID DestroyHeaderExclusionTableForCache(VOID);
#endif //ENABLE_DEBUG
#if INET_DEBUG
VOID DbgRegKey_Init( VOID );
VOID DbgRegKey_Terminate( VOID );
LONG DbgRegOpenKey( IN HKEY hKey, IN LPCTSTR lpszSubKey, OUT PHKEY phkResult, char * file, int line );
LONG DbgRegOpenKeyEx( IN HKEY hKey, IN LPCSTR lpSubKey, IN DWORD ulOptions, IN REGSAM samDesired, OUT PHKEY phkResult, char * file, int line );
LONG DbgRegCreateKeyEx( IN HKEY hKey, IN LPCSTR lpSubKey, IN DWORD Reserved, IN LPSTR lpClass, IN DWORD dwOptions, IN REGSAM samDesired, IN LPSECURITY_ATTRIBUTES lpSecurityAttributes, OUT PHKEY phkResult, OUT LPDWORD lpdwDisposition, char * file, int line );
LONG DbgRegCloseKey( IN HKEY hKey );
#define INITIALIZE_DEBUG_REGKEY() \
DbgRegKey_Init()
#define TERMINATE_DEBUG_REGKEY() \
DbgRegKey_Terminate()
#define REGOPENKEY(a, b, c) \
DbgRegOpenKey((a), (b), (c), __FILE__, __LINE__)
#define REGOPENKEYEX(a, b, c, d, e) \
DbgRegOpenKeyEx((a), (b), (c), (d), (e), __FILE__, __LINE__)
#define REGCREATEKEYEX(a, b, c, d, e, f, g, h, i) \
DbgRegCreateKeyEx((a), (b), (c), (d), (e), (f), (g), (h), (i), __FILE__, __LINE__)
#define REGCLOSEKEY(a) \
DbgRegCloseKey(a)
#else
#define INITIALIZE_DEBUG_REGKEY() \
/* NOTHING */
#define TERMINATE_DEBUG_REGKEY() \
/* NOTHING */
#define REGOPENKEY(a, b, c) \
RegOpenKey((a), (b), (c))
#define REGOPENKEYEX(a, b, c, d, e) \
RegOpenKeyEx((a), (b), (c), (d), (e))
#define REGCREATEKEYEX(a, b, c, d, e, f, g, h, i) \
RegCreateKeyEx((a), (b), (c), (d), (e), (f), (g), (h), (i))
#define REGCLOSEKEY(a) \
RegCloseKey(a)
#endif // INET_DEBUG
#if defined(__cplusplus)
} #endif
#endif // _REGISTRY_H_
|