Start 2
This commit is contained in:
259
Dokumentation/Administration/NWEdit.vb
Normal file
259
Dokumentation/Administration/NWEdit.vb
Normal file
@@ -0,0 +1,259 @@
|
||||
Imports System.Data.SqlClient
|
||||
|
||||
Public Class NWEdit
|
||||
Private con As New SqlConnection
|
||||
Private cmd As New SqlCommand
|
||||
Private reader As SqlDataReader
|
||||
|
||||
Public Netzwerkname As String
|
||||
Public NWStandort As String
|
||||
Public NWName As String
|
||||
Public NWAddress As String
|
||||
|
||||
Public Neu As Boolean = False
|
||||
|
||||
Private Function dbload()
|
||||
con.ConnectionString = Class1.DBConString
|
||||
cmd.Connection = con
|
||||
End Function
|
||||
|
||||
Private Sub NetzwerkBearbeiten_Load(sender As Object, e As EventArgs) Handles MyBase.Load
|
||||
dbload()
|
||||
LblInfo.Text = ""
|
||||
If Main.Debug = True Then
|
||||
PanDebug.Visible = True
|
||||
End If
|
||||
If Class1.Absender = "Main" Then
|
||||
NWStandort = Main.SenderStandort
|
||||
NWName = Main.SenderNetzwerk
|
||||
Netzwerkname = Main.SenderStandort & "_" & Main.SenderNetzwerk
|
||||
ElseIf Class1.Absender = "Standorthinzu" Then
|
||||
Netzwerkname = Standorthinzu.NeuerStandortNameIntern
|
||||
NWStandort = Standorthinzu.NeuerStandortName
|
||||
NWName = "Intern"
|
||||
ElseIf Class1.Absender = "Netzwerkhinzu" Then
|
||||
Netzwerkname = NetzwerkHinzu.NeuerNetzwerkNameIntern
|
||||
NWStandort = NetzwerkAdmin.LstStandort.SelectedItem
|
||||
NWName = NetzwerkHinzu.TxtName.Text
|
||||
Else
|
||||
MsgBox("Keine Daten")
|
||||
End If
|
||||
import()
|
||||
SubnetMask2NWBits()
|
||||
LblVLANName.Text = "Standort: " & NWStandort & " Name: " & NWName & " ändern:"
|
||||
LblTest.Text = Netzwerkname
|
||||
' PanDebug.Visible = False
|
||||
End Sub
|
||||
|
||||
''---------------------------------------------------------------------------LADEN---------------------------------------------------------------------------''
|
||||
|
||||
Private Function import()
|
||||
Try
|
||||
con.Open()
|
||||
cmd.CommandText = "SELECT * FROM Tbl_Netzwerke WHERE Netzwerkname='" & Netzwerkname & "'"
|
||||
ausgabe_Netzwerk()
|
||||
Catch ex As Exception
|
||||
MsgBox(ex.Message)
|
||||
End Try
|
||||
|
||||
con.Close()
|
||||
If TxtNetzwerk.Text = "" Then
|
||||
Neu = True
|
||||
Else
|
||||
Neu = False
|
||||
End If
|
||||
End Function
|
||||
|
||||
Private Function ausgabe_Netzwerk()
|
||||
Try
|
||||
reader = cmd.ExecuteReader()
|
||||
Do While reader.Read()
|
||||
TxtNetzwerk.Text = reader("Netzwerk")
|
||||
TxtSubnet.Text = reader("Subnetz")
|
||||
TxtGateway.Text = reader("Gateway")
|
||||
TxtDHCPBereichStart.Text = reader("DHCPStart")
|
||||
TxtDHCPBereichEnde.Text = reader("DHCPEnd")
|
||||
TxtDHCPServer.Text = reader("DHCPServer")
|
||||
TxtDNSServer.Text = reader("DNSServer")
|
||||
TxtVLAN.Text = reader("VLAN")
|
||||
TxtInfo.Text = reader("Info")
|
||||
ChkDHCPAnzeigen.Checked = Class1.ReadNullAs0(reader, "DHCPAbfragen")
|
||||
Loop
|
||||
reader.Close()
|
||||
Catch ex As Exception
|
||||
MsgBox(ex.Message)
|
||||
End Try
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
|
||||
''---------------------------------------------------------------------------BUTTONS---------------------------------------------------------------------------''
|
||||
|
||||
|
||||
|
||||
Private Sub CmdReset_Click(sender As Object, e As EventArgs) Handles CmdReset.Click
|
||||
import()
|
||||
End Sub
|
||||
|
||||
Private Sub CmdAbbrechen_Click(sender As Object, e As EventArgs) Handles CmdAbbrechen.Click
|
||||
Main.allesladen()
|
||||
' NetzwerkAdmin.LstStandortLoad()
|
||||
' NetzwerkAdmin.LstNetzwerkLoad()
|
||||
Close()
|
||||
End Sub
|
||||
|
||||
Private Sub CmdSave_Click(sender As Object, e As EventArgs) Handles CmdSave.Click
|
||||
NWAddressGenerieren()
|
||||
If Neu = False Then
|
||||
Try
|
||||
con.Open()
|
||||
cmd.CommandText = "UPDATE TBL_Netzwerke SET Netzwerk = '" & TxtNetzwerk.Text & "', Subnetz='" & TxtSubnet.Text & "', Gateway='" & TxtGateway.Text & "',DHCPAbfragen = '" & ChkDHCPAnzeigen.Checked & "', DHCPStart='" & TxtDHCPBereichStart.Text & "', DHCPEnd='" & TxtDHCPBereichEnde.Text & "', dhcpserver='" & TxtDHCPServer.Text & "', dnsserver='" & TxtDNSServer.Text & "', VLAN='" & TxtVLAN.Text & "', Info='" & TxtInfo.Text & "', NWAddress='" & NWAddress & "' WHERE Netzwerkname='" & Netzwerkname & "'"
|
||||
cmd.ExecuteNonQuery()
|
||||
con.Close()
|
||||
Catch ex As Exception
|
||||
|
||||
End Try
|
||||
ElseIf Neu = True Then
|
||||
con.Open()
|
||||
cmd.CommandText = "Insert into TBL_Netzwerke (Netzwerkname, Netzwerk, Subnetz, Gateway, DHCPStart, DHCPEnd, DHCPServer, DNSServer, VLAN, Info, NWAddress) values ('" & Main.SenderNetzwerk & "', '" & TxtNetzwerk.Text & "', '" & TxtSubnet.Text & "','" & TxtGateway.Text & "', '" & TxtDHCPBereichStart.Text & "', '" & TxtDHCPBereichEnde.Text & "', '" & TxtDHCPServer.Text & "', '" & TxtDNSServer.Text & "', '" & TxtVLAN.Text & "', '" & TxtInfo.Text & "', '" & NWAddress & "')"
|
||||
cmd.ExecuteNonQuery()
|
||||
con.Close()
|
||||
End If
|
||||
Try
|
||||
|
||||
Class1.Netzwerkfuellen(TxtNetzwerk.Text, TxtNWBits.Text, NWName, NWStandort)
|
||||
DHCPFill(TxtDHCPBereichStart.Text, TxtDHCPBereichEnde.Text, TxtNetzwerk.Text)
|
||||
Catch ex As Exception
|
||||
MsgBox(ex.Message)
|
||||
End Try
|
||||
con.Close()
|
||||
End Sub
|
||||
|
||||
|
||||
Private Sub TxtNWBits_KeyUp_Enter(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TxtNWBits.KeyUp ', TxtHost.TextChanged
|
||||
Try
|
||||
If e.KeyValue = Keys.Enter Then
|
||||
Dim subnetmask As String
|
||||
Class1.bit2mask(TxtNWBits.Text, subnetmask)
|
||||
TxtSubnet.Text = subnetmask
|
||||
End If
|
||||
Catch
|
||||
End Try
|
||||
End Sub
|
||||
Private Sub TxtSubnet_KeyUp_Enter(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TxtSubnet.KeyUp ', TxtHost.TextChanged
|
||||
Try
|
||||
If e.KeyValue = Keys.Enter Then
|
||||
SubnetMask2NWBits()
|
||||
End If
|
||||
Catch
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
|
||||
''----------------------------------------------------------------------------------------------------------------------------------------------------------''
|
||||
''----------------------------------------------------------------------------------------------------------------------------------------------------------''
|
||||
''---------------------------------------------------------------------------FUNCTIONS---------------------------------------------------------------------------''
|
||||
|
||||
|
||||
Public Function NWAddressGenerieren()
|
||||
NWAddress = TxtNetzwerk.Text
|
||||
Try
|
||||
Do
|
||||
NWAddress = NWAddress.Remove(NWAddress.Length - 1)
|
||||
|
||||
Loop Until NWAddress.Last() = "."
|
||||
Catch ex As Exception
|
||||
MsgBox("Fehler beim Konvertieren der Netzwerkadresse.")
|
||||
End Try
|
||||
End Function
|
||||
|
||||
Private Function SubnetMask2NWBits()
|
||||
Dim a, b, c, d, nwbits, hostbits As Integer
|
||||
Class1.netmaskseperator(TxtSubnet.Text, a, b, c, d, nwbits, hostbits)
|
||||
TxtNWBits.Text = nwbits
|
||||
|
||||
Dim host As Integer = Class1.IP2Host(TxtNetzwerk.Text)
|
||||
NWAddressGenerieren()
|
||||
TxtHostbereich.Text = NWAddress & host + 1 & " bis " & NWAddress & host + (2 ^ hostbits) - 2
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
Private Sub Netzwerkbearbeiten_Closing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
|
||||
Main.allesladen()
|
||||
End Sub
|
||||
|
||||
Private Sub DebugToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles DebugToolStripMenuItem.Click
|
||||
PanDebug.Visible = Not PanDebug.Visible
|
||||
End Sub
|
||||
|
||||
Public Function DHCPFill(dhcpstart As String, dhcpend As String, nw As String)
|
||||
Try
|
||||
dhcpstart = Convert.ToInt32(dhcpstart)
|
||||
dhcpend = Convert.ToInt32(dhcpend)
|
||||
Catch ex As Exception
|
||||
LblInfo.Text = "DHCP nicht anwendbar"
|
||||
dhcpstart = 0
|
||||
dhcpend = 0
|
||||
' Exit Function
|
||||
End Try
|
||||
If dhcpstart < 1 Or dhcpend > 254 Then
|
||||
' MsgBox("der DHCP Bereich kann nicht stimmen...")
|
||||
'Exit Function
|
||||
End If
|
||||
con.Open()
|
||||
cmd.CommandText = "select IPadresse, DHCP from TbL_Netzwerkclients Where NETNAME = (select NETNAME from TbL_Netzwerke Where Netzwerk = '" & nw & "') AND NWSTANDORT = (select NWSTANDORT from TbL_Netzwerke Where Netzwerk = '" & nw & "') ORDER BY HOST"
|
||||
reader = cmd.ExecuteReader()
|
||||
|
||||
Do While reader.Read()
|
||||
Dim IPAdresse As String = reader("IPAdresse")
|
||||
Dim Host As Integer = Class1.IP2Host(IPAdresse)
|
||||
|
||||
If Host = dhcpstart Then
|
||||
DHCPUpdate("Start", IPAdresse)
|
||||
ElseIf Host = dhcpend Then
|
||||
DHCPUpdate("Ende", IPAdresse)
|
||||
ElseIf Host > dhcpstart And Host < dhcpend Then
|
||||
DHCPUpdate("1", IPAdresse)
|
||||
Else
|
||||
DHCPUpdate("0", IPAdresse)
|
||||
End If
|
||||
Loop
|
||||
reader.Close()
|
||||
con.Close()
|
||||
LblInfo.Text = "Gespeichert."
|
||||
Timer3.Enabled = True
|
||||
End Function
|
||||
|
||||
Public Function DHCPUpdate(Wert As String, IPAdresse As String)
|
||||
Dim dhcpcon As New SqlConnection
|
||||
Dim dhcpcmd As New SqlCommand
|
||||
dhcpcon.ConnectionString = Class1.DBConString
|
||||
dhcpcmd.Connection = dhcpcon
|
||||
|
||||
dhcpcon.Open()
|
||||
dhcpcmd.CommandText = "UPDATE TbL_Netzwerkclients SET DHCP = '" & Wert & "' WHERE IPAdresse = '" & IPAdresse & "'"
|
||||
dhcpcmd.ExecuteNonQuery()
|
||||
dhcpcon.Close()
|
||||
End Function
|
||||
|
||||
Private Sub Timer3_Tick(sender As Object, e As EventArgs) Handles Timer3.Tick
|
||||
LblInfo.Text = ""
|
||||
Timer3.Enabled = False
|
||||
End Sub
|
||||
|
||||
''----------------------------------------------------------------------------------------------------------------------------------------------------------''
|
||||
''----------------------------------------------------------------------------------------------------------------------------------------------------------''
|
||||
''---------------------------------------------------------------------------Test---------------------------------------------------------------------------''
|
||||
|
||||
|
||||
Private Sub CmdTest_Click(sender As Object, e As EventArgs) Handles CmdTest.Click
|
||||
LblTest.Text = TxtNetzwerk.Text & " " & TxtNWBits.Text & vbCrLf
|
||||
'LblTest.Text &= Class1.Netzwerkfuellen(TxtNetzwerk.Text, TxtNWBits.Text) & vbCrLf
|
||||
End Sub
|
||||
|
||||
''----------------------------------------------------------------------------------------------------------------------------------------------------------''
|
||||
''----------------------------------------------------------------------------------------------------------------------------------------------------------''
|
||||
|
||||
End Class
|
||||
Reference in New Issue
Block a user