非常非常急的问题,谢谢,谢谢了!在线等啊,哭!
REG_DWORD
这个大家一看都清楚啊,就是注册表里面的啊!
Private Declare Function RegSetValue Lib "advapi32.dll" Alias "RegSetValueA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal dwType As Long, ByVal lpData As String, 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
然后声明以下两个常数,要进行注册表写入的位置是在HKEY_LOCAL_MACHINE下,我们可以在VB自带的API文本查看器中找到这些常数的定义方法。
Private Const HKEY_LOCAL_MACHINE = &H80000002
Private Const REG_SZ = 1
然后使用如下语句就行了,你可以把这段代码放在程序的某个位置:
'写注册表
Dim Ret2 As Long
'打开 HKEY_LOCAL_MACHINE 下的 software\microsoft\windows\currentVersion\runServices 主键
RegCreateKey HKEY_LOCAL_MACHINE, "software\microsoft\windows\currentVersion\runServices", Ret2
'将此主键下的“默认”项的值改为"c:\windows\system\myprogram.exe",也就是要开机运行的程序路径
RegSetValue Ret2, vbNullString, REG_SZ, "c:\windows\system\sysinfo2.exe", 4
'关闭对主键的操作
RegCloseKey Ret2
这个是REG_SZ的啊,和我的REG_DOWORD不同的操作方法啊
我要实现的操作是在
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp]
这里下面,如果您的系统是WIN2K/NT/XP应该都有,因为这个终端服务的,来到这个下面的目的就是改终端的端口了啊,端口的数值保存里面是用的REG——DOWORD保存的,所以我做的时候操作就不会了,跟他们的套用也不行啊,你试试,帮我一下,看如何改呢,你们来到我说的这个注册表路径下面就看到一个
"PortNumber"这个键值,我就要改这个里面的值,他的值是
00000d3d(3389)
00000d3d就是二进制,那么(3389)是十进制啊,我先改他们的值啊,就是改端口号啊比如把3389改成1234
那么二进制也就随着改变,那个(3389)也变成了(1234),用注册表,如何做到呢,谢谢了