Unit Reginc

Classes

Functions

RegCloseKey -
RegCreateKey -
RegOpenKeyEx -
RegQueryValueEx -
RegSetValueEx -

Types

HKEY

Constants

ACCESS_SYSTEM_SECURITY
ERROR_SUCCESS
GENERIC_ALL
GENERIC_EXECUTE
GENERIC_READ
GENERIC_WRITE
HKEY_CLASSES_ROOT
HKEY_CURRENT_CONFIG
HKEY_CURRENT_USER
HKEY_DYN_DATA
HKEY_LOCAL_MACHINE
HKEY_PERFORMANCE_DATA
HKEY_USERS
KEY_ALL_ACCESS
KEY_CREATE_LINK
KEY_CREATE_SUB_KEY
KEY_ENUMERATE_SUB_KEYS
KEY_EXECUTE
KEY_NOTIFY
KEY_QUERY_VALUE
KEY_READ
KEY_SET_VALUE
KEY_WRITE
MAXIMUM_ALLOWED
READ_CONTROL
REG_BINARY
REG_DWORD
REG_DWORD_BIG_ENDIAN
REG_DWORD_LITTLE_ENDIAN
REG_EXPAND_SZ
REG_FULL_RESOURCE_DESCRIPTOR
REG_LINK
REG_MULTI_SZ
REG_NONE
REG_RESOURCE_LIST
REG_RESOURCE_REQUIREMENTS_LIST
REG_SZ
SPECIFIC_RIGHTS_ALL
STANDARD_RIGHTS_ALL
STANDARD_RIGHTS_EXECUTE
STANDARD_RIGHTS_READ
STANDARD_RIGHTS_WRITE
SYNCHRONIZE
WRITE_DAC
WRITE_OWNER
_DELETE

Variables

idRegCloseKey32
idRegCreateKey32
idRegOpenKeyEx32
idRegQueryValueEx32
idRegSetValueEx32
RegCloseKey32
RegCreateKey32
RegOpenKeyEx32
RegQueryValueEx32
RegSetValueEx32


Functions


function RegCloseKey(hKey: LongInt): Longint;


function RegCreateKey(hKey: LongInt; lpSubKey: Pointer; var phkResult: LongInt): Longint;


function RegOpenKeyEx(hKey: LongInt; lpSubKey: PChar; ulOptions: LongInt; samDesired: LongInt; var phkResult: LongInt): Longint;


function RegQueryValueEx (hKey: LongInt; lpValueName: PChar; lpReserved: Pointer; lpType: PLongint; lpData: PByte; var lpcbData: Longint): Longint;


function RegSetValueEx(hKey: LongInt; lpValueName: PChar; Reserved: LongInt; dwType: Longint; lpData: Pointer; cbData: LongInt): Longint;


Types


HKEY=Longint
************************************************************************ Reginc This unit provides access to some of the 32 bit registry-functions of WinNT/95 for a 16-bit Program. Author: Hannes Danzl (e9026733@stud3.tuwien.ac.at) FREEWARE If you change it, please send me a copy!! **************************************************************************

Constants

ACCESS_SYSTEM_SECURITY = $01000000

ERROR_SUCCESS = 0

GENERIC_ALL = $10000000

GENERIC_EXECUTE = $20000000

GENERIC_READ = $80000000

GENERIC_WRITE = $40000000

HKEY_CLASSES_ROOT = $80000000

HKEY_CURRENT_CONFIG = $80000005

HKEY_CURRENT_USER = $80000001

HKEY_DYN_DATA = $80000006

HKEY_LOCAL_MACHINE = $80000002

HKEY_PERFORMANCE_DATA = $80000004

HKEY_USERS = $80000003

KEY_ALL_ACCESS = (STANDARD_RIGHTS_ALL or KEY_QUERY_VALUE or KEY_SET_VALUE or KEY_CREATE_SUB_KEY or KEY_ENUMERATE_SUB_KEYS or KEY_NOTIFY or KEY_CREATE_LINK) and not SYNCHRONIZE

KEY_CREATE_LINK = $0020

KEY_CREATE_SUB_KEY = $0004

KEY_ENUMERATE_SUB_KEYS = $0008

KEY_EXECUTE = KEY_READ and not SYNCHRONIZE

KEY_NOTIFY = $0010

KEY_QUERY_VALUE = $0001

KEY_READ = (STANDARD_RIGHTS_READ or KEY_QUERY_VALUE or KEY_ENUMERATE_SUB_KEYS or KEY_NOTIFY) and not SYNCHRONIZE

KEY_SET_VALUE = $0002

KEY_WRITE = (STANDARD_RIGHTS_WRITE or KEY_SET_VALUE or KEY_CREATE_SUB_KEY) and not SYNCHRONIZE

MAXIMUM_ALLOWED = $02000000

READ_CONTROL = $00020000

Renamed from DELETE

REG_BINARY = 3

REG_DWORD = 4

REG_DWORD_BIG_ENDIAN = 5

REG_DWORD_LITTLE_ENDIAN = 4

REG_EXPAND_SZ = 2

REG_FULL_RESOURCE_DESCRIPTOR = 9

REG_LINK = 6

REG_MULTI_SZ = 7

REG_NONE = 0

Registry Predefined Value Types

REG_RESOURCE_LIST = 8

REG_RESOURCE_REQUIREMENTS_LIST = 10

REG_SZ = 1

SPECIFIC_RIGHTS_ALL = $0000FFFF

STANDARD_RIGHTS_ALL = $001F0000

STANDARD_RIGHTS_EXECUTE = READ_CONTROL

STANDARD_RIGHTS_READ = READ_CONTROL

STANDARD_RIGHTS_WRITE = READ_CONTROL

SYNCHRONIZE = $00100000

Registry Specific Access Rights.

WRITE_DAC = $00040000

WRITE_OWNER = $00080000

_DELETE = $00010000

The following are masks for the predefined standard access types

Variables

idRegCloseKey32 : LongInt

idRegCreateKey32 : LongInt

idRegOpenKeyEx32 : LongInt

idRegQueryValueEx32 : LongInt

idRegSetValueEx32 : LongInt

RegCloseKey32 : function (hKey: LongInt;id:longint): Longint

RegCreateKey32 : function (hKey: LongInt; lpSubKey: Pointer; var phkResult: LongInt;id:longint): Longint

RegOpenKeyEx32 : function (hKey: LongInt; lpSubKey: PChar; ulOptions: LongInt; samDesired: LongInt; var phkResult: LongInt;id:longint): Longint

RegQueryValueEx32 : function(hKey: LongInt; lpValueName: PChar; lpReserved: Pointer; lpType: PLongint; lpData: PByte; var lpcbData: Longint;id:longint): Longint

RegSetValueEx32 : function (hKey: LongInt; lpValueName: PChar; Reserved: LongInt; dwType: Longint; lpData: Pointer; cbData: LongInt; id:Longint): Longint