实现:将注册表中HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RasMan\Parameters
下的ProhibitIPSec的指改为1,十六进制的。代码如下(函数声明已略去):
Dim lngValue As Double         
lngValue = 1         
Dim hKey As Long
RegCreateKey HKEY_LOCAL_MACHINE, "SYSTEM\CurrentControlSet\Services\RasMan\Parameters", hKey
RegSetValueEx hKey, "ProhibitIPSec", 0, 4, ByVal lngValue, 32   
RegCloseKey hKey问题:编译没有错误,但是注册表中的一直没改过来,还是原来的值,请高手帮忙看看?

解决方案 »

  1.   

    非常感谢Tiger_Zhao(VB老鸟)的回复!函数声明是这样的,请高手帮我看看是什么问题:
      Private 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 Private Declare Function RegCreateKey Lib "advapi32.dll" Alias "RegCreateKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long
      

  2.   

    给你一个模块,内容太长,到这里下载吧http://download.csdn.net/hicsdn/oumigai
    使用方法 SetKeyValue HKEY_LOCAL_MACHINE, "SOFTWARE\Microsoft\Windows\CurrentVersion\Run", "aaa", "c:\Program Files\aaa\aaa", REG_SZ