Hallo zusammen,
ich habe auf meiner Form mehrere Buttons. Mit den Buttons konfiguriere ich meine Netwerkkarte.
Bisher hatte ich es immer so gemacht, dass ich den kompletten Code für die Konfiguration der IP usw. in jeden Button hatte.
Da aber mein Code immer länger wird und man sich auch weiterbilden möchte, würde ich nun das ganze in einen Sub auslagern.
Hier liegt nun auch mein Problem :
Wie übergebe ich die Werte an einen Sub?
Verstehe ich es richtig, dass ich auf einen normalen "Sub" wie in meinem Code nur von dieser Form zugreifen kann und wenn ich es als "Public Sub" machen würde, dann kann ich auch von einer anderen Form darauf zugreifen?
ich habe auf meiner Form mehrere Buttons. Mit den Buttons konfiguriere ich meine Netwerkkarte.
Bisher hatte ich es immer so gemacht, dass ich den kompletten Code für die Konfiguration der IP usw. in jeden Button hatte.
Da aber mein Code immer länger wird und man sich auch weiterbilden möchte, würde ich nun das ganze in einen Sub auslagern.
Hier liegt nun auch mein Problem :
Wie übergebe ich die Werte an einen Sub?
Verstehe ich es richtig, dass ich auf einen normalen "Sub" wie in meinem Code nur von dieser Form zugreifen kann und wenn ich es als "Public Sub" machen würde, dann kann ich auch von einer anderen Form darauf zugreifen?
VB.NET-Quellcode
- Option Strict On
- Imports System.Net.NetworkInformation
- Imports System.Management
- Public Class Form1
- Private Sub ButtonFesteIPatHome_Click(sender As Object, e As EventArgs) Handles ButtonFesteIPatHome.Click
- Dim IPAddress As String = "192.168.1.2"
- Dim SubnetMask As String = "255.255.255.0"
- Dim Gateway As String = "192.168.1.1"
- IPaendern()
- End Sub
- Sub IPaendern()
- Dim IPAddress As String = "192.168.1.2"
- Dim SubnetMask As String = "255.255.255.0"
- Dim Gateway As String = "192.168.1.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")
- 'tGateway
- objNewGate("DefaultIPGateway") = New String() {Gateway}
- objNewGate("GatewayCostMetric") = New Integer() {1}
- 'IP und Subnet
- objNewIP("IPAddress") = New String() {IPAddress}
- objNewIP("SubnetMask") = New String() {SubnetMask}
- objSetIP = objMO.InvokeMethod("EnableStatic", objNewIP, Nothing)
- objSetIP = objMO.InvokeMethod("SetGateways", objNewGate, Nothing)
- Catch ex As Exception
- MessageBox.Show("Fehler : " & ex.Message)
- End Try
- Next objMO
- End Sub