各位高手:
我先用RegOpenKey打开HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer
然后打算用RegSetValueEx写进名为“NoRecentDocsMenu”的DWORD值“1”,
就是想在WIN98下去掉开始菜单的“文档”,但是试了很多次都不成功!很困惑!
我的RegSetValueEx最后两个参数是byval 1和4,在GOOGLE上找了好久,无果,请各位高手,前辈指教!
我先用RegOpenKey打开HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer
然后打算用RegSetValueEx写进名为“NoRecentDocsMenu”的DWORD值“1”,
就是想在WIN98下去掉开始菜单的“文档”,但是试了很多次都不成功!很困惑!
我的RegSetValueEx最后两个参数是byval 1和4,在GOOGLE上找了好久,无果,请各位高手,前辈指教!
'sample usage - Debug.Print UpodateKey(HKEY_CLASSES_ROOT, "keyname", "newvalue")
'-------------------------------------------------------------------------------------------------
Public Function UpdateKey(KeyRoot As Long, KeyName As String, SubKeyName As String, SubReg As Long, SubKeyValue As String, IngNumber As Long) As Long
Dim rc As Long' 返回代码
Dim hkey As Long' 处理一个注册表关键字
Dim hDepth As Long'
Dim lpAttr As SECURITY_ATTRIBUTES ' 注册表安全类型
lpAttr.nLength = 50 ' 设置安全属性为缺省值...
lpAttr.lpSecurityDescriptor = 0 ' ...
lpAttr.bInheritHandle = True' ...
'------------------------------------------------------------
'- 创建/打开注册表关键字...
'创建/打开//KeyRoot//KeyName
' 错误处理...
'------------------------------------------------------------
rc = RegCreateKeyEx(KeyRoot, KeyName, 0, "", 0, KEY_WRITE, lpAttr, hkey, hDepth)
If (rc <> ERROR_SUCCESS) Then GoTo CreateKeyError
'------------------------------------------------------------
'- 创建/修改关键字值...
' 要让RegSetValueEx() 工作需要输入一个空格...
' 创建/修改关键字值
'- 关闭注册表关键字...
'------------------------------------------------------------
Select Case SubReg
Case REG_SZ
rc = RegSetValueEx(hkey, SubKeyName, 0, SubReg, SubKeyValue, IngNumber)
If (rc <> ERROR_SUCCESS) Then GoTo CreateKeyError
End Select
rc = RegCloseKey(hkey)' 退出
Exit Function ' 错误处理
CreateKeyError:
UpdateKey = False ' 设置错误返回代码
rc = RegCloseKey(hkey)' 试图关闭关键字
End Function'-------------------------------------------------------------------------------------------------