INDEX CLUSTER FEATURES SHORT FRAMES NO FRAMES

indexing

title: "Visual Eiffel Library.", "The WAPI_REGISTRY class contains are the functions used with the Windows Registry API."
project: "Visual Eiffel Win32 Library"
revision: "$Revision: 1.1 $"
copyright: "Copyright (C) 1996-2005 Object Tools Group"
license: "http://visual-eiffel.com/license"
cluster: winlib
class WAPI_REGISTRY
inherit

WAPI_REGISTRY_CONSTANTS
end
feature -- Access

RegCloseKey (hkey: BIT 32): INTEGER
-- The 'RegCloseKey' function releases the handle of the specified key.
require
correct_hkey: hkey /= 00000000000000000000000000000000B

RegConnectRegistry (lpszcomputername: POINTER; hkey: BIT 32; phkresult: POINTER): INTEGER
-- The 'RegConnectRegistry' function establishes a connection
-- to a predefined registry handle on another computer.
require
correct_hkey: hkey /= 00000000000000000000000000000000B
correct_phkresult: phkresult /= default_pointer

RegCreateKey (hkey: BIT 32; lpszsubkey, phkresult: POINTER): INTEGER
-- The 'RegCreateKey' function creates the specified key.
-- If the key already exists in the registry, the function opens it.
-- This function is provided for compatibility with Windows
-- version 3.1. Win32-based applications should use the 'RegCreateKeyEx'
-- function.
require
correct_hkey: hkey /= 00000000000000000000000000000000B
correct_phkresult: phkresult /= default_pointer

RegCreateKeyEx (hkey: BIT 32; lpszsubkey: POINTER; dwreserved: INTEGER; lpszclass: POINTER; fdwoptions: BIT 32; samdesired: BIT 32; lpsecurityattributes: POINTER; phkresult: POINTER; lpdwdisposition: POINTER): INTEGER
-- The 'RegCreateKeyEx' function creates the specified key.
-- If the key already exists in the registry, the function opens it.
require
correct_hkey: hkey /= 00000000000000000000000000000000B
correct_dwreserved: dwreserved = 0
correct_phkresult: phkresult /= default_pointer

RegDeleteKey (hkey: BIT 32; lpszsubkey: POINTER): INTEGER
-- Windows 95: The 'RegDeleteKey' function deletes a key and all
-- its descendents.
--
-- Windows NT: The 'RegDeleteKey' function deletes the specified key.
-- This function cannot delete a key that has subkeys.
require
correct_hkey: hkey /= 00000000000000000000000000000000B
correct_lpszsubkey: lpszsubkey /= default_pointer

RegDeleteValue (hkey: BIT 32; lpszvalue: POINTER): INTEGER
-- The 'RegDeleteValue' function removes a named value from the
-- specified registry key.
require
correct_hkey: hkey /= 00000000000000000000000000000000B

RegEnumKey (hkey: BIT 32; isubkey: INTEGER; lpszname: POINTER; cchname: INTEGER): INTEGER
-- The 'RegEnumKey' function enumerates subkeys of the specified open
-- registry key. The function retrieves the name of one subkey each time
-- it is called. This function is provided for compatibility with
-- Windows version 3.1. Win32-based applications should use the
-- 'RegEnumKeyEx' function.
require
correct_hkey: hkey /= 00000000000000000000000000000000B
correct_lpszname: lpszname /= default_pointer

RegEnumKeyEx (hkey: BIT 32; isubkey: INTEGER; lpszname: POINTER; lpcchname: POINTER; lpdwreserved: POINTER; lpszclass: POINTER; lpcchclass: POINTER; lpftlastwrite: POINTER): INTEGER
-- The 'RegEnumKeyEx' function enumerates subkeys of the specified open
-- registry key. The function retrieves information about one subkey each
-- time it is called. Unlike the 'RegEnumKey' function, 'RegEnumKeyEx'
-- retrieves the class name of the subkey and the time it was
-- last modified.
require
correct_hkey: hkey /= 00000000000000000000000000000000B
correct_lpszname: lpszname /= default_pointer
correct_lpcchname: lpcchname /= default_pointer
correct_lpdwreserved: lpdwreserved = default_pointer
correct_lpftlastwrite: lpftlastwrite /= default_pointer

RegEnumValue (hkey: BIT 32; ivalue: INTEGER; lpszvalue: POINTER; lpcchvalue: POINTER; lpdwreserved: POINTER; lpdwtype: POINTER; lpbdata: POINTER; lpcbdata: POINTER): INTEGER
-- The 'RegEnumValue' function enumerates the values for the specified
-- open registry key. The function copies one indexed value name and
-- data block for the key each time it is called.
require
correct_hkey: hkey /= 00000000000000000000000000000000B
correct_lpszvalue: lpszvalue /= default_pointer
correct_lpcchvalue: lpcchvalue /= default_pointer
correct_lpdwreserved: lpdwreserved = default_pointer

RegFlushKey (hkey: BIT 32): INTEGER
-- The 'RegFlushKey' function writes all the attributes of the specified
-- open key into the registry.
require
correct_hkey: hkey /= 00000000000000000000000000000000B

RegGetKeySecurity (hkey: BIT 32; secinf: BIT 32; psecdesc: POINTER; lpcbsecdesc: POINTER): INTEGER
-- The 'RegGetKeySecurity' function retrieves a copy of the security
-- descriptor protecting the specified open registry key.
require
correct_hkey: hkey /= 00000000000000000000000000000000B
correct_psecdesc: psecdesc /= default_pointer
correct_lpcbsecdesc: lpcbsecdesc /= default_pointer

RegLoadKey (hkey: BIT 32; lpszsubkey, lpszfile: POINTER): INTEGER
-- The 'RegLoadKey' function creates a subkey under HKEY_USER or
-- HKEY_LOCAL_MACHINE and stores registration information from
-- a specified file into that subkey. This registration information
-- is in the form of a hive. A hive is a discrete body of keys, subkeys,
-- and values that is rooted at the top of the registry hierarchy.
-- A hive is backed by a single file and .LOG file.
require
correct_hkey: hkey /= 00000000000000000000000000000000B
correct_lpszsubkey: lpszsubkey /= default_pointer
correct_lpszfile: lpszfile /= default_pointer

RegNotifyChangeKeyValue (hkey: BIT 32; fwatchsubtree: INTEGER; fdwnotifyfilter: BIT 32; hevent: INTEGER; fasync: INTEGER): INTEGER
-- The 'RegNotifyChangeKeyValue' function indicates when a registry key
-- or any of its subkeys has changed.
require
correct_hkey: hkey /= 00000000000000000000000000000000B
correct_fwatchsubtree: fwatchsubtree = 0 or fwatchsubtree = 1
correct_fasync: fasync = 0 or fasync = 1

RegOpenKey (hkey: BIT 32; lpszsubkey, phkresult: POINTER): INTEGER
-- The 'RegOpenKey' function opens the specified key.
-- This function is provided for compatibility with Windows
-- version 3.1. Win32-based applications should use the 'RegOpenKeyEx'
-- function.
require
correct_hkey: hkey /= 00000000000000000000000000000000B
correct_phkresult: phkresult /= default_pointer

RegOpenKeyEx (hkey: BIT 32; lpszsubkey: POINTER; dwreserved: INTEGER; samdesired: BIT 32; phkresult: POINTER): INTEGER
-- The 'RegOpenKeyEx' function opens the specified key.
require
correct_hkey: hkey /= 00000000000000000000000000000000B
correct_dwreserved: dwreserved = 0
correct_phkresult: phkresult /= default_pointer

RegQueryInfoKey (hkey: BIT 32; lpszclass: POINTER; lpcchclass: POINTER; lpdwreserved: POINTER; lpcsubkeys: POINTER; lpcchmaxsubkey: POINTER; lpcchmaxclass: POINTER; lpcvalues: POINTER; lpcchmaxvaluename: POINTER; lpcbmaxvaluedata: POINTER; lpcbsecuritydescriptor: POINTER; lpftlastwritetime: POINTER): INTEGER
-- The 'RegQueryInfoKey' function retrieves information
-- about a specified registry key.
require
correct_hkey: hkey /= 00000000000000000000000000000000B
correct_lpdwreserved: lpdwreserved = default_pointer

RegQueryValue (hkey: BIT 32; lpszsubkey, lpszvalue, pcbvalue: POINTER): INTEGER
-- The 'RegQueryValue' function retrieves the value associated with
-- the unnamed value for a specified key in the registry. Values
-- in the registry have name, type, and data components.
-- This function retrieves the data for a key's first value that
-- has a NULL name. This function is provided for compatibility with
-- Windows version 3.1. Win32-based applications should use the
-- 'RegQueryValueEx' function.
require
correct_hkey: hkey /= 00000000000000000000000000000000B
correct_pcbvalue: pcbvalue /= default_pointer

RegQueryValueEx (hkey: BIT 32; lpszvaluename: POINTER; lpdwreserved: POINTER; lpdwtype: POINTER; lpbdata: POINTER; lpcbdata: POINTER): INTEGER
-- The 'RegQueryValueEx' function retrieves the type and data
-- for a specified value name associated with an open registry key.
require
correct_hkey: hkey /= 00000000000000000000000000000000B
correct_lpdwreserved: lpdwreserved = default_pointer

RegReplaceKey (hkey: BIT 32; lpsubkey: POINTER; lpnewfile: POINTER; lpoldfile: POINTER): INTEGER
-- The 'RegReplaceKey' function replaces the file backing a key
-- and all its subkeys with another file, so that when the system
-- is next started, the key and subkeys will have the values stored
-- in the new file.
require
correct_hkey: hkey /= 00000000000000000000000000000000B
correct_lpnewfile: lpnewfile /= default_pointer
correct_lpoldfile: lpoldfile = default_pointer

RegRestoreKey (hkey: BIT 32; lpszfile: POINTER; fdw: INTEGER): INTEGER
-- The 'RegRestoreKey' function reads the registry information
-- in a specified file and copies it over the specified key.
-- This registry information may be in the form of a key and multiple
-- levels of subkeys.
require
correct_hkey: hkey /= 00000000000000000000000000000000B
correct_lpszfile: lpszfile /= default_pointer

RegSaveKey (hkey: BIT 32; lpszfile, lpsa: POINTER): INTEGER
-- The 'RegSaveKey' function saves the specified key and all of
-- its subkeys and values to a new file.
require
correct_hkey: hkey /= 00000000000000000000000000000000B
correct_lpszfile: lpszfile /= default_pointer

RegSetKeySecurity (hkey: BIT 32; si: BIT 32; psd: POINTER): INTEGER
-- The 'RegSetKeySecurity' function sets the security of an open
-- registry key.
require
correct_hkey: hkey /= 00000000000000000000000000000000B
correct_psd: psd /= default_pointer

RegSetValue (hkey: BIT 32; lpsubkey: POINTER; dwtype: INTEGER; lpdata: POINTER; cbdata: INTEGER): INTEGER
-- The 'RegSetValue' function associates a value with a specified key.
-- This value must be a text string and cannot have a name.
-- This function is provided for compatibility with Windows
-- version 3.1. Win32-based applications should use the 'RegSetValueEx'
-- function, which allows an application to set any number
-- of named values of any data type.
require
correct_hkey: hkey /= 00000000000000000000000000000000B
correct_lpsubkey: lpsubkey /= default_pointer
correct_dwtype: dwtype = reg_sz
correct_lpdata: lpdata /= default_pointer

RegSetValueEx (hkey: BIT 32; lpvaluename: POINTER; reserved: INTEGER; dwtype: INTEGER; lpdata: POINTER; cbdata: INTEGER): INTEGER
-- The 'RegSetValueEx' function stores data in the value field of an open
-- registry key. It can also set additional value and type information
-- for the specified key.
require
correct_hkey: hkey /= 00000000000000000000000000000000B
correct_reserved: reserved = 0
correct_lpdata: lpdata /= default_pointer

RegUnLoadKey (hkey: BIT 32; lpszsubkey: POINTER): INTEGER
-- The 'RegUnLoadKey' function unloads the specified key and subkeys
-- from the registry.
require
correct_hkey: hkey /= 00000000000000000000000000000000B
correct_lpszsubkey: lpszsubkey /= default_pointer

RegQueryMultipleValues (hkey: BIT 32; val_list: POINTER; num_vals: INTEGER; lpvaluebuf: POINTER; ldwtotsize: POINTER): INTEGER
-- The 'RegQueryMultipleValues' function retrieves the type and data for
-- a list of value names associated with an open registry key.
require
correct_hkey: hkey /= 00000000000000000000000000000000B
correct_val_list: val_list /= default_pointer
correct_lpvaluebuf: lpvaluebuf /= default_pointer
correct_ldwtotsize: ldwtotsize /= default_pointer
end -- class WAPI_REGISTRY

INDEX CLUSTER FEATURES SHORT FRAMES NO FRAMES