网站建设资讯

NEWS

网站建设资讯

包含vb.net更改ip的词条

VB怎么获取并修改主机IP地址

Function ChangeIP(IP As String, NM As String, GW As String, MDNS As String, SDNS As String) As String

我们提供的服务有:做网站、成都网站建设、微信公众号开发、网站优化、网站认证、茫崖ssl等。为上千企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的茫崖网站制作公司

Dim strComputer, objWMIService, colNetAdapters, strIPAddress, strSubnetMask

Dim strGateway, strGatewaymetric, strDNS, objNetAdapter, errEnable, errGateways, errDNS

strComputer = "."

Set objWMIService = GetObject("winmgmts:\\" strComputer "\root\cimv2")

Set colNetAdapters = objWMIService.ExecQuery("Select * from Win32_NetworkAdapterConfiguration where IPEnabled=TRUE")

strIPAddress = Array(IP) 'IP地址

strSubnetMask = Array(NM) '子网

strGateway = Array(GW) 'Gateways

strDNS = Array(MDNS, SDNS) 'MAIN DNS AND SECOND DNS

strGatewaymetric = Array(1)

For Each objNetAdapter In colNetAdapters

errEnable = objNetAdapter.EnableStatic(strIPAddress, strSubnetMask)

errGateways = objNetAdapter.SetGateways(strGateway, strGatewaymetric)

errDNS = objNetAdapter.SetDNSServerSearchOrder(strDNS)

If errEnable = 0 And errGateways = 0 And errDNS = 0 Then

ChangeIP = "成功"

Else

If errEnable = 0 Then

ChangeIP = "IP地址和子网成功, "

Else

ChangeIP = "IP地址或子网置 X, "

End If

If errGateways = 0 Then

ChangeIP = ChangeIP "DEFAULT成功, "

Else

ChangeIP = ChangeIP "DEFAULT X, "

End If

If errDNS = 0 Then

ChangeIP = ChangeIP "DNS成功"

Else

ChangeIP = ChangeIP "DNS X"

End If

End If

Next

End Function

Private Sub Command1_Click()

MsgBox ChangeIP(Winsock1.LocalIP, "255.255.255.0", "192.168.2.10", "192.168.2.10", "192.168.2.1")

End Sub

Private Sub Command2_Click()

MsgBox ChangeIP(Winsock1.LocalIP, "255.255.255.0", "192.168.2.1", "192.168.2.1", "192.168.2.10")

End Sub

Private Sub Form_Load()

If Winsock1.Index = "192.168.2.1" Then

Label2.Caption = "电信"

Else

Label2.Caption = "鉄通"

End If

End Sub

参考一下吧 下班了 没时间改了

我的是拿winsock找ip的

怎样让用户在VB 中的 textbox控件输入IP地址实现修改本机IP的目的?

是可以实现的。修改注册表实现,要重起后生效. 或者禁用网卡在重启用,就可以.

程序代码:

Option Explicit

Const REG_SZ As Long = 1

Const HKEY_LOCAL_MACHINE = H80000002

Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long

Private Declare Function RegOpenKey Lib "advapi32.dll" Alias "RegOpenKeyA" _

(ByVal hKey As Long, ByVal lpSubKey As String, phkResult 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 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 RegQueryValueEx Lib "advapi32.dll" Alias "RegQueryValueExA" _

(ByVal hKey As Long, ByVal lpValueName As String, ByVal lpReserved As Long, _

lpType As Long, lpData As Any, lpcbData As Long) As Long

Private Declare Function RegEnumKey Lib "advapi32.dll" Alias "RegEnumKeyA" (ByVal hKey As Long, ByVal dwIndex As Long, ByVal lpName As String, ByVal cbName As Long) As Long

Dim aaa As String

Private Sub Command1_Click()

Dim hKey As Long, hKey1 As Long, hKey2 As Long, ret As Long, ret1 As Long, lenData As Long, typeData As Long

Dim Name As String, name1 As String, name2 As String, s As String, S1 As String

Dim idx As Integer

idx = 0

Name = String(256, Chr(0))

RegCreateKey HKEY_LOCAL_MACHINE, "System\CurrentControlSet\Services\Class\NetTrans", hKey

Text1.Text = hKey

Do

ret = RegEnumKey(hKey, idx, Name, Len(Name))

If ret = 0 Then

aaa = Left(Name, InStr(Name, Chr(0)) - 1)

aaa = "System\CurrentControlSet\Services\Class\NetTrans\" aaa

ret = RegOpenKey(HKEY_LOCAL_MACHINE, aaa, hKey)

'获得IP地址

If ret = 0 Then

name1 = "IPAddress"

name2 = "IPMask"

ret = RegQueryValueEx(hKey, name1, 0, typeData, ByVal vbNullString, lenData)

s = String(lenData, Chr(0))

RegQueryValueEx hKey, name1, 0, typeData, ByVal s, lenData

If s "" Then s = Left(s, InStr(s, Chr(0)) - 1)

'获得子网掩码

ret1 = RegQueryValueEx(hKey, name2, 0, typeData, ByVal vbNullString, lenData)

S1 = String(lenData, Chr(0))

RegQueryValueEx hKey, name2, 0, typeData, ByVal S1, lenData

If S1 "" Then S1 = Left(S1, InStr(S1, Chr(0)) - 1)

If Val(s) 0 Then

Text1.Text = s

Text2.Text = S1

Command2.Enabled = True

Exit Sub

End If

End If

idx = idx + 1

End If

Loop Until ret 0

End Sub

Private Sub Command2_Click()

Dim hKey As Long

If Text1.Text "" Then

RegCreateKey HKEY_LOCAL_MACHINE, aaa, hKey

' 修改IP地址

RegSetValueEx hKey, "IPAddress", 0, REG_SZ, ByVal Text1.Text, 13

' 修改子网掩码

RegSetValueEx hKey, "IPMask", 0, REG_SZ, ByVal Text2.Text, 13

RegCloseKey hKey

End If

End Sub

vb.net怎样设置ie浏览器的代理服务器地址

建议你使用注册表的API进行修改

封装两个NET函数给你

private string GetReg(string RegPath)  取得注册表项内容

{

string str="";

RegistryKey hkml = Registry.LocalMachine; 

RegistryKey software = hkml.OpenSubKey("SOFTWARE",true); 

RegistryKey aimdir = software.OpenSubKey("krabs",true);

if (aimdir != null)

{

if (aimdir.GetValue(RegPath) != null)

str = aimdir.GetValue(RegPath).ToString();

if (str != null)

return str;

return null;

}

return null;

}

private bool SetReg(string RegPath,string Data)  //设置注册表内容

{

RegistryKey reg = Registry.LocalMachine;

RegistryKey software = reg.OpenSubKey("SOFTWARE", true);

RegistryKey aimdir1 = software.CreateSubKey("krabs");

if (aimdir1 == null)

return false;

aimdir1.SetValue(RegPath, Data);

return true;

}

VB.NET的TCP/IP协议 怎么弄

Dim th As Threading.Thread

2 Dim tcpl As System.Net.Sockets.TcpListener

3

4 Private Sub Form1_Load()Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

5 th = New System.Threading.Thread(New System.Threading.ThreadStart(AddressOf MyListen))

6 th.Start()

7 End Sub

8

9 Public Sub SendMessage()Sub SendMessage(ByVal IP As String, ByVal SendMsg As String)

10 Try

11 If IP "" Then

12 Dim tcpc As New System.Net.Sockets.TcpClient(IP, 5656)

13 Dim tcpStream As Net.Sockets.NetworkStream = tcpc.GetStream

14 Dim reqStream As New IO.StreamWriter(tcpStream)

15 reqStream.Write(SendMsg)

16 reqStream.Flush()

17 tcpStream.Close()

18 tcpc.Close()

19 End If

20 Catch ex As Exception

21 MsgBox(ex.Message.ToString)

22 End Try

23 End Sub

24 Private Sub MyListen()Sub MyListen()

25 Try

26 Dim ipAddress As System.Net.IPAddress = System.Net.Dns.Resolve(System.Net.Dns.GetHostName).AddressList(0)

27 tcpl = New System.Net.Sockets.TcpListener(ipAddress, 5656)

28 tcpl.Start()

29 While True

30 Dim s As System.Net.Sockets.Socket = tcpl.AcceptSocket()

31 Dim MyBuffer(1024) As Byte

32 Dim i As Integer

33 i = s.Receive(MyBuffer)

34 If i 0 Then

35 Dim lstrRec As String

36 Dim j As Integer

37 For j = 0 To i - 1

38 TextBox1.Text += Chr(MyBuffer(j)) ","

39 Next

40 End If

41 End While

42 Catch ex As Exception

43 MsgBox(ex.Message.ToString)

44 End Try

45 End Sub

46

47 Private Sub Button1_Click()Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

48 SendMessage("192.168.0.61", TextBox2.Text)

49 End Sub

如何在vb,net用程序修改ip地址

做exe程序获取本机IP地址用

System.Net.Dns.GetHostByName(System.Net.Dns.GetHostName()).AddressList

做web程序获取客户端的IP地址用

HttpContext.Current.Request.ServerVariables("REMOTE_ADDR"])

VB 修改 IP地地址

你要问的是不是以上三项在注册表中的位置,下面提供:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces

项下有很多句柄你可以在里边找到不同的本地连接对应的句柄,在程序里进行修改就可以了,如果找不到,可以先在本地连接属性里修改tcp/ip协议的相应设置,然后到注册表里查找相应的数据就可以定位该位置了!源码这次就不给出了,就是修改注册表,和容易,您可以使用vb自带的函数,也可以使用wsh提供的脚本函数,当然也可以使用winAPI(比较复杂,要严格定义参数类型,即缓冲区,所以简单的修改不建议使用)。

希望您的问题能尽快解决!


标题名称:包含vb.net更改ip的词条
文章出自:http://njwzjz.com/article/hddogc.html