设置ipv4地址

时间:2019-02-20 18:22:45

标签: vb.net

我正在制作一个可以更改IP地址的小程序。

我的问题是我有一个已安装的虚拟盒子,并且此代码将适配器的ip设置更改为不是我的以太网

如何指定适配器

我的代码

Imports System.Management
Imports System.Net
Imports System.Net.NetworkInformation
Imports System.Object
Imports System.IO
Public Class Form1

  Private Sub Button1_Click(sender As Object, e As EventArgs) HandlesButton1.Click
    Dim IPAddress As String = "192.168.0.20"
    Dim SubnetMask As String = "255.255.255.0"
    Dim Gateway As String = "192.168.0.1"
    Dim objMC As ManagementClass = New ManagementClass("Win32_NetworkAdapterConfiguration")
    Dim objMOC As ManagementObjectCollection = objMC.GetInstances()
    For Each objMO As ManagementObject In objMOC
        If (Not CBool(objMO("IPEnabled"))) Then
            Continue For
        End If
        Try
            Dim objNewIP As ManagementBaseObject = Nothing
            Dim objSetIP As ManagementBaseObject = Nothing
            Dim objNewGate As ManagementBaseObject = Nothing
            objNewIP = objMO.GetMethodParameters("EnableStatic")
            objNewGate = objMO.GetMethodParameters("SetGateways")
            'Set DefaultGateway
            objNewGate("DefaultIPGateway") = New String() {Gateway}
            objNewGate("GatewayCostMetric") = New Integer() {1}
            'Set IPAddress and Subnet Mask
            objNewIP("IPAddress") = New String() {IPAddress}
            objNewIP("SubnetMask") = New String() {SubnetMask}
            objSetIP = objMO.InvokeMethod("EnableStatic", objNewIP, Nothing)
            objSetIP = objMO.InvokeMethod("SetGateways", objNewGate, Nothing)
            Console.WriteLine("Updated IPAddress, SubnetMask and Default Gateway!")
        Catch ex As Exception
            MessageBox.Show("Unable to Set IP : " & ex.Message)
        End Try

    Next objMO
End Sub

结束班级

0 个答案:

没有答案