Rapid-Q Documentation by William Yu (c)1999 | Appendix A: QREGISTRY |
|
(*) Registry is composed of Keys and SubKeys. Each Key and SubKey (*) can containone or more variables named Values. These Values (*) have a ValueName and a ValueData. (*) Example : (*) Key HKEY_CLASSES_ROOT .Bas\Shell\Open\Command (*) contains a Default value who's ValueName is "" and whose (*) value is "C:\Rapidq\RapidQ.Exe %1" (*) ValueName maybe "AnyName". The default ValueName is "" (*) The Registry can be edited with Regedit.Exe or regedt32.Exe
Field | Type | R/W | Default |
|
|
|
|
CurrentKey | INTEGER | R | |
CurrentPath | STRING | R | |
(*)GetDataSize(ValueName$) | INTEGER | R | |
(*)GetDataType(ValueName$) | INTEGER | R | |
HasSubKeys | INTEGER | R | |
KeyItemCount | INTEGER | R | |
ValueItemCount | INTEGER | R | |
RootKey | INTEGER | RW | HKEY_CURRENT_USER |
Method | Type | Description | Params |
|
|
|
|
CloseKey | SUB | Closes opened key | 0 |
CreateKey | FUNCTION (Key$) AS INTEGER | Creates a new key in CurrentPath. | 1 |
DeleteKey | FUNCTION (Key$) AS INTEGER | Deletes key. | 1 |
DeleteValue | FUNCTION (ValName$) AS INTEGER | Deletes a value data. | 1 |
KeyExists | FUNCTION (Key$) AS INTEGER | Returns 0 or 1 if key exists. | 1 |
KeyItem | FUNCTION (Index%) AS STRING | Retrieve the names of the subkeys | 1 |
MoveKey | FUNCTION (OldKey$, NewKey$, Delete%) | Moves existing key, subkeys, and data values. | 3 |
OpenKey | FUNCTION (Key$, CanCreate%) | CanCreate specifies whether to create the specified key if it does not exist. | 2 |
(*)ReadBinary | (*)FUNCTION (ValueName$, Index%) AS BYTE | Return binary value of specified key(Bug : Index must Start at -1) | 2 |
(*)ReadFloat | FUNCTION (ValueName$) AS DOUBLE | Return double value of specified key | 1 |
(*)ReadInteger | FUNCTION (ValueName$) AS INTEGER | Return integer value of specified key | 1 |
(*)ReadString | FUNCTION (ValueName$) AS STRING | Return string value of specified key | 1 |
RegistryConnect | FUNCTION (CompName$) AS INTEGER | Establishes connection to another computer's registry. | 1 |
RenameValue | (*)SUB (OldValueName$, NewValueName$) | Renames existing data value. | 2 |
ValueExists | FUNCTION (ValueName$) AS INTEGER | Returns 0 or 1 if data value Value$ exists. | 1 |
ValueItem | FUNCTION (Index%) AS STRING | Retrieve the names of the data values | 1 |
WriteBinary | (*)SUB (ValueName$, BYTE(), Size%) | Write Array of BYTEs in the specified key | 3 |
WriteFloat | (*)SUB (ValeName$, ValueData#) | Write double value in the specified key | 2 |
WriteInteger | (*)SUB (ValueName$, ValueData&) | Write integer value in the specified key | 2 |
WriteString | (*)SUB (ValueName$, ValueData$) | Write string in the specified key | 2 |
(*) Notes : (*) - READ and WRITE requires the mother KEY to be OPENED first with OpenKey(Key) (*) - WRITE subs Create ValueName if it does not exist (*) - MOVEKEY sets undefined ValueDatas of String type to "", which can be a problem. (*) MOVEKEY with Delete% set to one is like renaming a key.
Event | Type | Occurs when... | Params |
|
|
|
|
' Detect if your computer is connected to the internet Const HKEY_LOCAL_MACHINE = &H80000002 DIM Registry AS QRegistry Registry.RootKey = HKEY_LOCAL_MACHINE Registry.OpenKey("System\CurrentControlSet\Services\RemoteAccess", 0) '(index was 0 originally, but due to ReadBinary bug it must be -1) IF Registry.ReadBinary("Remote Connection", -1) = 1 THEN ShowMessage("You're connected!") ELSE ShowMessage("You're not connected!") END IF Registry.CloseKey '(*)(*) Lines corrected in april 2004
Prev Component | Contents | Next Component |