|
-
Jul 27th, 2000, 02:53 PM
#1
Thread Starter
Frenzied Member
can someone please tell me how to add something to the registary. Please dont put links to tutorials and stuff, what I need is a simple code that will save text.text to the registary, it contains 1 character.
please help
thanks in advance
NXSupport - Your one-stop source for computer help
-
Jul 27th, 2000, 03:03 PM
#2
To save a retrieve values from the Registry:
Code:
Public Const HKEY_CLASSES_ROOT = &H80000000
Public Const HKEY_CURRENT_USER = &H80000001
Public Const HKEY_LOCAL_MACHINE = &H80000002
Public Const HKEY_USERS = &H80000003
Public Const HKEY_PERFORMANCE_DATA = &H80000004
Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hkey As Long) As Long
Declare Function RegCreateKey Lib "advapi32.dll" Alias "RegCreateKeyA" (ByVal hkey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Declare Function RegDeleteKey Lib "advapi32.dll" Alias "RegDeleteKeyA" (ByVal hkey As Long, ByVal lpSubKey As String) As Long
Declare Function RegDeleteValue Lib "advapi32.dll" Alias "RegDeleteValueA" (ByVal hkey As Long, ByVal lpValueName As String) As Long
Declare Function RegOpenKey Lib "advapi32.dll" Alias "RegOpenKeyA" (ByVal hkey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Declare Function RegQueryValueEx Lib "advapi32.dll" Alias "RegQueryValueExA" (ByVal hkey As Long, ByVal lpValueName As String, ByVal lpReserved As Long, lpType As Long, lpData As Any, lpcbData As Long) As Long
Declare Function RegSetValueEx Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal hkey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, lpData As Any, ByVal cbData As Long) As Long
Function RegQueryStringValue(ByVal hkey As Long, ByVal strValueName As String)
Dim lResult As Long
Dim lValueType As Long
Dim strBuf As String
Dim lDataBufSize As Long
On Error GoTo 0
lResult = RegQueryValueEx(hkey, strValueName, 0&, lValueType, ByVal 0&, lDataBufSize)
If lResult = ERROR_SUCCESS Then
If lValueType = REG_SZ Then
strBuf = String(lDataBufSize, " ")
lResult = RegQueryValueEx(hkey, strValueName, 0&, 0&, ByVal strBuf, lDataBufSize)
If lResult = ERROR_SUCCESS Then
RegQueryStringValue = StripTerminator(strBuf)
End If
End If
End If
End Function
Public Function GetString(hkey As Long, strpath As String, strvalue As String)
Dim keyhand&
Dim datatype&
r = RegOpenKey(hkey, strpath, keyhand&)
GetString = RegQueryStringValue(keyhand&, strvalue)
r = RegCloseKey(keyhand&)
End Function
Function StripTerminator(ByVal strString As String) As String
Dim intZeroPos As Integer
intZeroPos = InStr(strString, Chr$(0))
If intZeroPos > 0 Then
StripTerminator = Left$(strString, intZeroPos - 1)
Else
StripTerminator = strString
End If
End Function
Public Sub savestring(hkey As Long, strpath As String, strvalue As String, strdata As String)
Dim keyhand&
r = RegCreateKey(hkey, strpath, keyhand&)
r = RegSetValueEx(keyhand&, strvalue, 0, REG_SZ, ByVal strdata, Len(strdata))
r = RegCloseKey(keyhand&)
End Sub
Usage
Use the Functions GetString and SaveString to retrieve and save values to the Registry. Here is an example. Make a Form with 2 CommandButtons's and put the following code into them.
Code:
Private Sub Command1_Click()
'Save a Value to the Registry
savestring HKEY_CURRENT_USER, "Software\Myapp", "Testing", "Hello"
End Sub
Private Sub Command2_Click()
'Get a value from the Registry
Retval = GetString(HKEY_CURRENT_USER, "Software\Myapp", "Testing")
Print Retval
End Sub
-
Jul 27th, 2000, 03:08 PM
#3
Thread Starter
Frenzied Member
Thanks alot Megatron!!!! I have 1 more question, before when I had it in txt files, I use encryption, is it still nessesary? or not any more? Or do you suggest to use encryption?
NXSupport - Your one-stop source for computer help
-
Jul 27th, 2000, 03:21 PM
#4
Thread Starter
Frenzied Member
this is what I have for the command buttons:
Code:
Private Sub Command1_Click()
'Save a Value to the Registry
savestring HKEY_CURRENT_USER, "Software\Pc Protecter", Text1.Text
End Sub
Private Sub Command2_Click()
'Get a value from the Registry
Retval = GetString(HKEY_CURRENT_USER, "Software\Pc Protecter")
Print Retval
End Sub
now, how do I get what ever I put in text1.text to appear in text2.text (from the registary)
NXSupport - Your one-stop source for computer help
-
Jul 27th, 2000, 03:24 PM
#5
Try this.
Code:
Text2.Text = GetString(HKEY_CURRENT_USER, "Software\Pc Protecter")
-
Jul 27th, 2000, 03:36 PM
#6
Thread Starter
Frenzied Member
it doesn't work I get an error message:
Code:
Private Sub Command1_Click()
'Save a Value to the Registry
'**********************************
'error: argument no optional
savestring HKEY_CURRENT_USER, "Software\Pc Protecter", Text1.Text
'**********************************
End Sub
________________________________________________
Private Sub Command2_Click()
'Get a value from the Registry
' Retval = GetString(HKEY_CURRENT_USER, "Software\Pc Protecter")
' Print Retval
Text2.Text = GetString(HKEY_CURRENT_USER, "Software\Pc Protecter")
End Sub
NXSupport - Your one-stop source for computer help
-
Jul 27th, 2000, 03:42 PM
#7
That's because you are missing the last argument. If you do not want to use it, just pass a blank string
Code:
savestring HKEY_CURRENT_USER, "Software\Pc Protecter", Text1.Text, "" 'If you want, you can also pass vbNullString
-
Jul 27th, 2000, 03:46 PM
#8
Thread Starter
Frenzied Member
no erros come up but it still doesn't work
can you do me a favor, make a simple program that has 2 text boxes and 2 command boxes, and the registary code, and email me the source. my email is [email protected], if its too much work then forget about it, oh and please post if you can or can not.
NXSupport - Your one-stop source for computer help
-
Jul 27th, 2000, 04:00 PM
#9
I looked at the above code and saw that you have not included your blank string, make sure to include it.
Code:
savestring HKEY_CURRENT_USER, "Software\Pc Protecter", Text1.Text, ""
Code:
Text2.Text = GetString(HKEY_CURRENT_USER, "Software\Pc Protecter", "YourValueHere")
-
Jul 27th, 2000, 04:03 PM
#10
I just realized that maybe it's confusion. When you enter the path, you do not include the value. The value has it's own argument (the 3rd one).
Also, I just sent you the example.
[Edited by Megatron on 07-27-2000 at 05:11 PM]
-
Jul 27th, 2000, 04:51 PM
#11
Thread Starter
Frenzied Member
NXSupport - Your one-stop source for computer help
-
Jul 27th, 2000, 09:29 PM
#12
Thread Starter
Frenzied Member
did you already send it becuase i didn't recieve it yet, please email it to [email protected]
NXSupport - Your one-stop source for computer help
-
Nov 20th, 2007, 11:02 AM
#13
Banned
Re: using the registary
Kalong.RegWrite "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Winlogon\LegalNoticeText", "0000000000000"
-
Nov 20th, 2007, 01:30 PM
#14
Re: using the registary
Did you mean to respond to a thread that was 7 years old? In any case if you want a simple way to use the Registry take a look at the How to use SaveSetting and GetSetting link in my signature.
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|