关于新建一个注册表项和值

vsden 2005-11-05 01:02:45
如何在Form_Load/Form_Unload通过激活check.value=0/1 来新建一个注册表项和值同时传递CheckValue TextValue到注册表里呢 谢谢
...全文
210 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
vsden 2005-11-05
  • 打赏
  • 举报
回复
哦 这个是我复制的问题 无论如何都非常感谢你faysky2
faysky2 2005-11-05
  • 打赏
  • 举报
回复
能不能不保存在HKEY_LOCAL_MACHINE\SOFTWARE\Vsden下啊,那样还要用两个读写注册表的API函数,用SaveSetting函数,它就放在HKEY_CURRENT_USER\Software\VB And VBA Program Settings下的。

'读取注册表的值,并删除注册表里的项目
Private Sub Form_Load()
If GetSetting("AppCheck", "Check", "CheckValue") <> "" Then
Check1.Value = GetSetting("AppCheck", "Check", "CheckValue")
DeleteSetting "AppCheck", "Check", "CheckValue"
End If
If GetSetting("AppText", "Text", "TextValue") <> "" Then
Text1.Text = GetSetting("AppText", "Text", "TextValue")
DeleteSetting "AppText", "Text", "TextValue"
End If
End Sub

Private Sub Check1_Click()
If Check1.Value = 0 Then
Text1.Text = ""
End If
End Sub

'关闭Exe时,若Check1选中则保存Check和Text的设置值到注册表,否则删除他们的设置值
Private Sub Form_Unload(Cancel As Integer)
If Check1.Value = 0 Then
SaveSetting "AppCheck", "Check", "CheckValue", Check1.Value
SaveSetting "AppText", "Text", "TextValue", Text1.Text
Else
If GetSetting("AppCheck", "Check", "CheckValue") <> "" Then
DeleteSetting "AppCheck", "Check", "CheckValue"
End If
If GetSetting("AppText", "Text", "TextValue") <> "" Then
DeleteSetting "AppText", "Text", "TextValue"
End If
End If
End Sub
faysky2 2005-11-05
  • 打赏
  • 举报
回复
你的Form1_Load()和Form1_Unload要改为:
Form_Load()和Form_Unload
另外,你的Form_Load里的DeleteSetting "AHKEY_LOCAL_MACHINE\SOFTWARE\ppText", "Text", "TextValue" 这句写错了
DeleteSetting "HKEY_LOCAL_MACHINE\SOFTWARE\AppText", "Text", "TextValue"

这样就好了
vsden 2005-11-05
  • 打赏
  • 举报
回复
我就是用你的代码 我太笨了
这样吧 你写个完整的能编译的代码给我吧
给你一个textbox和checkbox 要求:
当check1.value==1时 把text1.text的内容保存在HKEY_LOCAL_MACHINE\SOFTWARE\Vsden的text里
并且要求在关闭exe后 重新打开exe时 check1.value仍为1 注册表text的内容自动载入text1.text
当check1.value==0时 清除text1.text的内容和注册表的内容 关闭exe重新打开exe 功能和以上相反
谢谢
faysky2 2005-11-05
  • 打赏
  • 举报
回复
把你的Form_Load代码和Form_Unload 完整代码帖出来看看
vsden 2005-11-05
  • 打赏
  • 举报
回复
SaveSetting函数会自动在HKEY_CURRENT_USER\Software\VB And VBA Program Settings下建立注册表项和值
——————————————————————————————————————————
可是我照着你的方法为什么没效果呀 注册表里也没有?
vsden 2005-11-05
  • 打赏
  • 举报
回复
比如我想在运行exe程序时,通过选择□保存(check),
在注册表HKEY_LOCAL_MACHINE\SOFTWARE\ 新建(当check.value==1时)一个exe的项,
然后新建个Check和Text1值,把上头那个Check1.Value和Text1.Text做为check和text1的数据。
请问该如何做?
SaveSetting和GetSetting函数分别保存和读取注册表的值,那值在注册表的哪里?

——————————————————————————————————————————
我不太明白,AppCheck, Check, CheckValue 3个参数 分别代表的是项,值和数据的意思吗?
我想如下编写 为什么不行
Private Sub Form1_Load()
If GetSetting("HKEY_LOCAL_MACHINE\SOFTWARE\AppCheck", "Check", "CheckValue") <> "" Then
Check1.Value = GetSetting("HKEY_LOCAL_MACHINE\SOFTWARE\AppCheck", "Check", "CheckValue")
DeleteSetting "HKEY_LOCAL_MACHINE\SOFTWARE\AppCheck", "Check", "CheckValue"
End If
If GetSetting("HKEY_LOCAL_MACHINE\SOFTWARE\AppText", "Text", "TextValue") <> "" Then
Text1.Text = GetSetting("HKEY_LOCAL_MACHINE\SOFTWARE\AppText", "Text", "TextValue")
DeleteSetting "AHKEY_LOCAL_MACHINE\SOFTWARE\ppText", "Text", "TextValue"
End If
End Sub

'保存设置值到注册表
Private Sub Form1_Unload(Cancel As Integer)
SaveSetting "HKEY_LOCAL_MACHINE\SOFTWARE\AppCheck", "Check", "CheckValue", Check1.Value
SaveSetting "HKEY_LOCAL_MACHINE\SOFTWARE\AppText", "Text", "TextValue", Text1.Text
End Sub
faysky2 2005-11-05
  • 打赏
  • 举报
回复
同时在 HKEY_USERS\S-1-5-21-343818398-854245398-725345543-500\Software\VB and VBA Program Settings 下也会建立注册表项和值
faysky2 2005-11-05
  • 打赏
  • 举报
回复
SaveSetting函数会自动在HKEY_CURRENT_USER\Software\VB And VBA Program Settings下建立注册表项和值
vsden 2005-11-05
  • 打赏
  • 举报
回复
新建一个注册表项和值 如何确定如:HKEY_LOCAL_MACHINE\SOFTWARE 这样的路径
faysky2 2005-11-05
  • 打赏
  • 举报
回复
'读取注册表的值,并删除注册表里的项目
Private Sub Form_Load()
Check1.Value = GetSetting("AppCheck", "Check", "CheckValue")
Text1.Text = GetSetting("AppText", "Text", "TextValue")
DeleteSetting "AppCheck", "Check", "CheckValue"
DeleteSetting "AppText", "Text", "TextValue"
End Sub

'保存设置值到注册表
Private Sub Form_Unload(Cancel As Integer)
SaveSetting "AppCheck", "Check", "CheckValue", Check1.Value
SaveSetting "AppText", "Text", "TextValue", Text1.Text
End Sub

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧