|
|
//-----------------------------------------------------------------------//
//
// File: Reg.h
// Created: Jan 1997
// By: Martin Holladay (a-martih)
// Purpose: Header file for Reg.cpp
// Modification History:
// Created - Jan 1997 (a-martih)
// Aug 1997 - MartinHo - Incremented to 1.01 for bug fixes in:
// load.cpp, unload.cpp, update.cpp, save.cpp & restore.cpp
// Sept 1997 - MartinHo - Incremented to 1.02 for update:
// increased value date max to 2048 bytes
// Oct 1997 - MartinHo - Incremented to 1.03 for REG_MULTI_SZ bug fixes.
// Correct support for REG_MULTI_SZ with query, add and update.
// April 1998 - MartinHo - Fixed RegOpenKey() in Query.cpp to not require
// KEY_ALL_ACCESS but rather KEY_READ.
// June 1998 - MartinHo - Increased LEN_MACHINENAME to 18 to account for the
// leading "\\" characters. (version 1.05)
// Feb 1999 - A-ERICR - added reg dump, reg find, and many bug fixes(1.06)
// April 1999 Zeyong Xu: re-design, revision -> version 2.0
//
//------------------------------------------------------------------------//
#ifndef _REG_H
#define _REG_H
#include "appvars.h"
LONG AddRegistry(PAPPVARS pAppVars, UINT argc, TCHAR *argv[]);
VOID InitGlobalStrings( VOID);
void InitAppVars(PAPPVARS pAppVars); void FreeAppVars(PAPPVARS pAppVars); void Banner(); REG_STATUS BreakDownKeyString(TCHAR *szStr, PAPPVARS pAppVars); REG_STATUS ParseKeyName(TCHAR *szStr, PAPPVARS pAppVars); BOOL BSearchRegistry(LPTSTR lpszKey, PTSTR lpszSearch, LPTSTR lpszValue, DWORD dwType, DWORD dwSizeOfValue); LONG CopyEnumerateKey(HKEY hKey, TCHAR* szSubKey, HKEY hDstKey, TCHAR* szDstSubKey, BOOL *bOverWriteAll, BOOL bSubToAll); LONG CopyRegistry(PAPPVARS pAppVars, PAPPVARS pDstVars, UINT argc, TCHAR *argv[]); LONG CopyValue(HKEY hKey, TCHAR* szValueName, HKEY hDstKey, TCHAR* szDstValueName, BOOL *bOverWriteAll); LONG RecursiveDeleteKey(HKEY hKey, LPCTSTR szName); LONG DeleteRegistry(PAPPVARS pAppVars, UINT argc, TCHAR *argv[]); LONG DeleteValues(PAPPVARS pAppVars); void ErrorMessage(UINT nErr); void GetTypeStrFromType(TCHAR *szTypeStr, DWORD dwType); REG_STATUS ParseMachineName(TCHAR* szStr, PAPPVARS pAppVars); DWORD IsRegDataType(TCHAR *szStr); LONG LoadHive(PAPPVARS pAppVars, UINT argc, TCHAR *argv[]); BOOL Prompt(LPCTSTR szFormat, LPCTSTR szStr, BOOL bForce); LONG QueryEnumerateKey(HKEY hKey, TCHAR* szFullKey, BOOL bRecurseSubKeys); LONG QueryRegistry(PAPPVARS pAppVars, UINT argc, TCHAR *argv[]); LONG QueryValue(HKEY hKey, TCHAR* szValueName); LONG RegAdjustTokenPrivileges(TCHAR *szMachine, TCHAR *szPrivilege, LONG nAttribute); LONG RegConnectMachine(PAPPVARS pAppVars); LONG RestoreHive(PAPPVARS pAppVars, UINT argc, TCHAR *argv[]); LONG RegRestoreKeyWin98(HKEY hKey, TCHAR* szSubKey, TCHAR* szFile); LONG SaveHive(PAPPVARS pAppVars, UINT argc, TCHAR *argv[]); LONG UnLoadHive(PAPPVARS pAppVars, UINT argc, TCHAR *argv[]); void Usage(APPVARS AppVars); void Who();
LONG ExportRegFile(PAPPVARS pAppVars,UINT argc,TCHAR *argv[]); LONG ImportRegFile(PAPPVARS pAppVars,UINT argc,TCHAR *argv[]);
REG_STATUS ParseExportCmdLine(PAPPVARS pAppVars, UINT argc, TCHAR *argv[]); REG_STATUS ParseImportCmdLine(PAPPVARS pAppVars, UINT argc, TCHAR *argv[]); REG_STATUS ParseRegCmdLine(PAPPVARS pAppVars, UINT argc, TCHAR *argv[]); REG_STATUS ParseAddCmdLine(PAPPVARS pAppVars, UINT argc, TCHAR *argv[]); REG_STATUS ParseCopyCmdLine(PAPPVARS pAppVars, PAPPVARS pDstVars, UINT argc, TCHAR *argv[]); REG_STATUS ParseDeleteCmdLine(PAPPVARS pAppVars, UINT argc, TCHAR *argv[]); REG_STATUS ParseQueryCmdLine(PAPPVARS pAppVars, UINT argc, TCHAR *argv[]); REG_STATUS ParseSaveCmdLine(PAPPVARS pAppVars, UINT argc, TCHAR *argv[]); REG_STATUS ParseUnLoadCmdLine(PAPPVARS pAppVars, UINT argc, TCHAR *argv[]); REG_STATUS ParseExportCmdLine(PAPPVARS pAppVars, UINT argc, TCHAR *argv[]); REG_STATUS ParseImportCmdLine(PAPPVARS pAppVars, UINT argc, TCHAR *argv[]);
LONG CompareRegistry(PAPPVARS pAppVars, PAPPVARS pDstVars, UINT argc, TCHAR *argv[]);
int __cdecl MyTPrintf( FILE* fp, LPCTSTR FormatString, ... );
extern TCHAR g_NoName[100];
BOOL SetThreadUILanguage0( DWORD dwReserved );
#endif //_REG_H
|