VB读写注册表,提供了 SaveSetting、GetSetting 等函数,但它们读写注册表的位置有限。那么,如何将如下注册表操作代码,改为使用 API 函数来实现? Private Sub Form_Load() Command1(0).Caption = "添加" Command1(1).Caption = "查询" Command1(2).Caption = "查看全部" Command1(3).Caption = "删除" Command1(4).Caption = "删除全部" Command1(5).Caption = "退出" Text1 = "VBSetting" End Sub
Private Sub Command1_Click(Index As Integer) Dim K As Variant, S As String, J As Integer Select Case Index Case 0 SaveSetting "Huama", App.EXEName, Text1, App.Path & "\" & App.EXEName & Text1 Case 1 K = GetSetting("Huama", App.EXEName, Text1) MsgBox "您查询的键值为:" & vbCrLf & K Case 2 K = GetAllSettings("Huama", App.EXEName) '是一个通用型二维数组 For J = LBound(K, 1) To UBound(K, 1) '从一维的下标到一维的上标 S = S & K(J, 0) & ":" & K(J, 1) & vbCrLf Next MsgBox "您查询的键值为:" & vbCrLf & S Case 3 DeleteSetting "Huama", App.EXEName, Text1 Case 4 DeleteSetting "Huama" Case 5 Load Me End End Select End Sub
请不吝指教!您提供的代码,如果测试通过,加付30分,如果能将语句或函数及其参数讲解详细,再付20分。 谢谢各位朋友的热心帮助。 各位给出的方案是利用 WScript.Shel 对象操作注册表,但这必须“以管理员身份运行”,否则,系统总是提示“拒绝的权限”而不能写入或删除注册表键值。因此,不是我满意的解决方案。请各位就如何利用 API 函数改写以上代码继续给予指导。谢谢。