840 lines
32 KiB
VB.net
840 lines
32 KiB
VB.net
Imports System.Data.SqlClient
|
|
|
|
Public Class HostBearbeiten
|
|
|
|
Public con As New SqlConnection
|
|
Public cmd As New SqlCommand
|
|
Public reader As SqlDataReader
|
|
|
|
Public HostA As String = Main.SenderHost
|
|
Public NetA As String = Main.SenderNetzwerk
|
|
Public StandA As String = Main.SenderStandort
|
|
Public Netzwerk As String
|
|
|
|
Public LinkedHost As String
|
|
Public LinkedNet As String
|
|
Public LinkedStand As String
|
|
Public LinkedNetzwerk As String
|
|
|
|
Public SQLWhere As String = "WHERE NWSTANDORT='" & StandA & "' AND NETNAME='" & NetA & "'"
|
|
Public NetzID As String = StandA & "_" & NetA
|
|
|
|
Dim Linked As Integer = 0
|
|
Dim LinkedWith As String
|
|
|
|
Public geaendert As Boolean
|
|
|
|
|
|
|
|
''''LADEN''''
|
|
Private Sub HostBearbeiten_Load(sender As Object, e As EventArgs) Handles MyBase.Load
|
|
dbload()
|
|
If Main.Debug = True Then
|
|
PanDebug.Visible = True
|
|
End If
|
|
FillAutocomplete()
|
|
'importiere(Main.SenderStandort, Main.SenderNetzwerk, Main.SenderHost)
|
|
'MsgBox(NetA & StandA & HostA)
|
|
importiere(StandA, NetA, HostA)
|
|
'laden(Main.SenderIP, Main.SenderHost)
|
|
LblInfo.Text = "" & Main.SenderStandort & "_" & Main.SenderNetzwerk & " " & TxtName.Text
|
|
|
|
End Sub
|
|
'''''''''''''''
|
|
|
|
Public Function dbload()
|
|
con.ConnectionString = Class1.DBConString
|
|
cmd.Connection = con
|
|
End Function
|
|
|
|
Private Function laden(IP As String, Host As String)
|
|
FillAutocomplete()
|
|
Dim abfrage As String = "IPAdresse='" & IP & "'"
|
|
'MsgBox(standort & netzwerk & Host)
|
|
Try
|
|
con.Open()
|
|
cmd.CommandText = "SELECT * FROM TbL_Netzwerkclients WHERE " & abfrage & ""
|
|
|
|
Catch ex As Exception
|
|
MsgBox("Fehler Function Import: " & ex.Message)
|
|
End Try
|
|
ausgabe_Host(Host)
|
|
con.Close()
|
|
geaendert = False
|
|
LbLDebug.Text = "nicht geändert"
|
|
'LblInfo.Text = "Netzwerk: " & Main.SenderStandort & "_" & Main.SenderNetzwerk & " " & TxtName.Text
|
|
Me.Text = Main.SenderStandort & "_" & Main.SenderNetzwerk & " " & TxtName.Text
|
|
End Function
|
|
|
|
|
|
Public Function importiere(standort As String, netzwerk As String, Host As String)
|
|
' FillAutocomplete()
|
|
Dim abfrage As String = "NWSTANDORT='" & standort & "' AND NETNAME='" & netzwerk & "' AND HOST='" & Host & "'"
|
|
'MsgBox(standort & netzwerk & Host)
|
|
Try
|
|
con.Open()
|
|
cmd.CommandText = "SELECT * FROM TbL_Netzwerkclients WHERE " & abfrage & ""
|
|
|
|
Catch ex As Exception
|
|
MsgBox("Fehler Function Import: " & ex.Message)
|
|
End Try
|
|
ausgabe_Host(Host)
|
|
con.Close()
|
|
geaendert = False
|
|
LbLDebug.Text = "nicht geändert"
|
|
'LblInfo.Text = "Netzwerk: " & Main.SenderStandort & "_" & Main.SenderNetzwerk & " " & TxtName.Text
|
|
Me.Text = StandA & "_" & NetA & " " & TxtName.Text
|
|
End Function
|
|
|
|
Private Function importierelinked(ip As String)
|
|
Try
|
|
con.Close()
|
|
dbload()
|
|
Catch ex As Exception
|
|
MsgBox("dbload in importierelinked")
|
|
End Try
|
|
|
|
Dim abfrage As String = "IPAdresse= '" & ip & "'"
|
|
'MsgBox(standort & netzwerk & Host)
|
|
Try
|
|
con.Open()
|
|
cmd.CommandText = "SELECT * FROM TbL_Netzwerkclients WHERE " & abfrage & ""
|
|
|
|
Catch ex As Exception
|
|
MsgBox("importierelinked(ip As String): " & ex.Message)
|
|
End Try
|
|
ausgabe_LinkedHost()
|
|
con.Close()
|
|
geaendert = False
|
|
LbLDebug.Text = "nicht geändert"
|
|
End Function
|
|
|
|
Private Function ausgabe_Host(Host As String)
|
|
TxtHost.BackColor = Color.White
|
|
TxtHost.Text = Host
|
|
TxtIP.Text = ""
|
|
TxtName.Text = ""
|
|
TxtMAC.Text = ""
|
|
TxtType.Text = ""
|
|
TxtInfo.Text = ""
|
|
TxtBenutzername.Text = ""
|
|
TxtKennwort.Text = ""
|
|
TxtLink.Text = ""
|
|
TxtQuickInfo.Text = ""
|
|
TxtModell.Text = ""
|
|
TxtSeriennummer.Text = ""
|
|
TxtStandort.Text = ""
|
|
Linked = "0"
|
|
Try
|
|
reader = cmd.ExecuteReader()
|
|
Do While reader.Read()
|
|
Netzwerk = reader("Netzwerk")
|
|
TxtBenutzername.Text = checknull("Benutzer")
|
|
TxtIP.Text = reader("IPAdresse")
|
|
TxtName.Text = checknull("FQDN")
|
|
TxtStandort.Text = checknull("Standort")
|
|
TxtMAC.Text = checknull("MAC")
|
|
TxtType.Text = checknull("TYPE")
|
|
TxtInfo.Text = checknull("Info")
|
|
TxtHost.Text = reader("Host")
|
|
TxtKennwort.Text = checknull("Passwort")
|
|
TxtLink.Text = checknull("LINK")
|
|
TxtQuickInfo.Text = checknull("QINFO")
|
|
TxtModell.Text = checknull("Modell")
|
|
TxtSeriennummer.Text = checknull("Seriennummer")
|
|
Linked = reader("Linked")
|
|
If Linked = "1" Then
|
|
ChkLinked.Checked = True
|
|
TxtLinkedWith.Text = reader("LinkedWith")
|
|
' importierelinked(TxtLinkedWith.Text)
|
|
Else
|
|
ChkLinked.Checked = False
|
|
End If
|
|
Loop
|
|
reader.Close()
|
|
Catch ex As Exception
|
|
|
|
MsgBox("Hostbearbeiten.Ausgabe_Host reader.Read: " & ex.Message)
|
|
'LbLDebug.Text = ex.Message
|
|
End Try
|
|
|
|
|
|
'MsgBox(Linked)
|
|
|
|
End Function
|
|
|
|
Private Sub AutoCompleteFüllenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles AutoCompleteFüllenToolStripMenuItem.Click
|
|
FillAutocomplete()
|
|
End Sub
|
|
|
|
Private Function checknull(text As String)
|
|
Try
|
|
' If reader.Read() Then
|
|
If reader.IsDBNull(0) Then
|
|
'MsgBox("Null")
|
|
Return String.Empty
|
|
Else
|
|
Return reader(text).ToString
|
|
End If
|
|
'End If
|
|
Catch ex As Exception
|
|
MsgBox("Checknull: " & ex.Message)
|
|
End Try
|
|
|
|
End Function
|
|
|
|
Private Function ausgabe_LinkedHost()
|
|
'TxtHost.Text = host
|
|
'TxtIP.Text = ""
|
|
TxtName.Text = ""
|
|
TxtMAC.Text = ""
|
|
TxtType.Text = ""
|
|
TxtInfo.Text = ""
|
|
TxtBenutzername.Text = ""
|
|
TxtKennwort.Text = ""
|
|
TxtLink.Text = ""
|
|
TxtQuickInfo.Text = ""
|
|
TxtModell.Text = ""
|
|
TxtStandort.Text = ""
|
|
TxtSeriennummer.Text = ""
|
|
Try
|
|
reader = cmd.ExecuteReader()
|
|
Do While reader.Read()
|
|
'TxtIP.Text = checknull("IPAdresse")
|
|
TxtName.Text = checknull("FQDN")
|
|
TxtMAC.Text = checknull("MAC")
|
|
TxtType.Text = checknull("TYPE")
|
|
TxtInfo.Text = checknull("Info")
|
|
'TxtHost.Text = checknull("Host")
|
|
TxtBenutzername.Text = checknull("Benutzer")
|
|
TxtKennwort.Text = checknull("Passwort")
|
|
TxtLink.Text = checknull("LINK")
|
|
TxtQuickInfo.Text = checknull("QINFO")
|
|
TxtModell.Text = checknull("Modell")
|
|
TxtSeriennummer.Text = checknull("Seriennummer")
|
|
TxtStandort.Text = checknull("Standort")
|
|
'Linked = checknull("Linked")
|
|
Loop
|
|
reader.Close()
|
|
Catch ex As Exception
|
|
MsgBox("Hostbearbeiten.Ausgabe_Host reader.Read: " & ex.Message)
|
|
End Try
|
|
|
|
|
|
End Function
|
|
|
|
Private Function deleteHost()
|
|
dbload()
|
|
Dim ds As New DataSet
|
|
Dim da As New SqlDataAdapter("SELECT * FROM TbL_Netzwerkclients WHERE LinkedWith ='" & TxtIP.Text & "'", con)
|
|
|
|
Dim slavenetzwerke As String = ""
|
|
|
|
da.Fill(ds)
|
|
Dim i As Integer = 0
|
|
For Each dr As DataRow In ds.Tables(0).Rows
|
|
slavenetzwerke &= ds.Tables(0).Rows(i).Item("NWStandort") & "_" & ds.Tables(0).Rows(i).Item("NetName") & ": " & ds.Tables(0).Rows(i).Item("IPAdresse") & vbCrLf
|
|
i = i + 1
|
|
Next
|
|
con.Close()
|
|
|
|
Try
|
|
con.Open()
|
|
cmd.CommandText = "SELECT * FROM TbL_Netzwerkclients WHERE LinkedWith ='" & TxtIP.Text & "'"
|
|
cmd.ExecuteNonQuery()
|
|
reader = cmd.ExecuteReader()
|
|
If reader.Read Then
|
|
If MsgBox("Dieser Eintrag ist ein Master-Eintrag (Linked). Es werden sämtliche Slave-Einträge" & vbCrLf & slavenetzwerke & " ebenfalls gelöscht. Fortfahren?", MsgBoxStyle.OkCancel) = MsgBoxResult.Ok Then
|
|
con.Close()
|
|
con.Open()
|
|
cmd.CommandText = "DELETE TbL_Netzwerkclients WHERE LinkedWith ='" & TxtIP.Text & "'"
|
|
cmd.ExecuteNonQuery()
|
|
cmd.CommandText = "DELETE TbL_Netzwerkclients WHERE IPAdresse ='" & TxtIP.Text & "'"
|
|
cmd.ExecuteNonQuery()
|
|
Else
|
|
con.Close()
|
|
Exit Function
|
|
End If
|
|
End If
|
|
con.Close()
|
|
con.Open()
|
|
cmd.CommandText = "DELETE TbL_Netzwerkclients WHERE IPAdresse ='" & TxtIP.Text & "'"
|
|
cmd.ExecuteNonQuery()
|
|
Catch ex As Exception
|
|
MsgBox(ex.Message)
|
|
End Try
|
|
con.Close()
|
|
End Function
|
|
Private Function deleteFiles(host As String)
|
|
Dim path As String = Class1.FilePath & "\" & NetzID & "\" & host
|
|
Try
|
|
If IO.Directory.Exists(path) Then
|
|
Dim files As String() = IO.Directory.GetFiles(path)
|
|
For Each file As String In files
|
|
IO.File.Delete(file)
|
|
Next
|
|
|
|
IO.Directory.Delete(path, True)
|
|
'Else
|
|
' MsgBox("Kein Ordner zum Löschen gefunden: wird übersprungen.")
|
|
End If
|
|
Catch ex As Exception
|
|
MsgBox("Beim Löschen der Dateien: " & ex.Message)
|
|
End Try
|
|
|
|
End Function
|
|
|
|
|
|
Private Sub CmdReset_Click(sender As Object, e As EventArgs) Handles CmdReset.Click
|
|
importiere(StandA, NetA, HostA)
|
|
End Sub
|
|
|
|
Private Sub CmdSave_Click(sender As Object, e As EventArgs) Handles CmdSave.Click
|
|
HostSpeichern("speichern")
|
|
LinkedMasterUpdate()
|
|
TxtHost.BackColor = Color.White
|
|
geaendert = False
|
|
End Sub
|
|
|
|
Public Function HostSpeichern(mach As String)
|
|
If mach = "machlink" Then
|
|
importierelinked(TxtLinkedWith.Text)
|
|
End If
|
|
dbload()
|
|
If TxtIP.Text = "" Then
|
|
HostErstellen()
|
|
ElseIf Linked = "1" Then
|
|
Try
|
|
''Linked Master speichern
|
|
con.Open()
|
|
cmd.CommandText = "UPDATE TbL_Netzwerkclients Set FQDN='" & TxtName.Text & "', MAC='" & TxtMAC.Text & "', Standort='" & TxtStandort.Text & "', type='" & TxtType.Text & "', info='" & TxtInfo.Text & "' , Benutzer='" & TxtBenutzername.Text & "', passwort='" & TxtKennwort.Text & "' , link='" & TxtLink.Text & "', Modell='" & TxtModell.Text & "', QINFO='" & TxtQuickInfo.Text & "', Seriennummer='" & TxtSeriennummer.Text & "' WHERE IPAdresse = '" & TxtLinkedWith.Text & "' "
|
|
'' Linked Slave speichern
|
|
cmd.ExecuteNonQuery()
|
|
cmd.CommandText = "UPDATE TbL_Netzwerkclients Set IPAdresse = '" & TxtIP.Text & "', FQDN='" & TxtName.Text & "', Standort='" & TxtStandort.Text & "', Linked='" & Linked & "', LinkedWith='" & TxtLinkedWith.Text & "', MAC='" & TxtMAC.Text & "', type='" & TxtType.Text & "', info='" & TxtInfo.Text & "' , Benutzer='" & TxtBenutzername.Text & "', passwort='" & TxtKennwort.Text & "' , link='" & TxtLink.Text & "', Modell='" & TxtModell.Text & "', QINFO='" & TxtQuickInfo.Text & "', Seriennummer='" & TxtSeriennummer.Text & "' " & SQLWhere & " AND Host='" & HostA & "'"
|
|
|
|
cmd.ExecuteNonQuery()
|
|
Catch ex As Exception
|
|
MsgBox("Linked HostSpeichern(): " & ex.Message)
|
|
End Try
|
|
con.Close()
|
|
Else
|
|
Try
|
|
con.Open()
|
|
cmd.CommandText = "UPDATE TbL_Netzwerkclients Set IPAdresse = '" & TxtIP.Text & "', FQDN='" & TxtName.Text & "', Standort='" & TxtStandort.Text & "', Linked='" & Linked & "', LinkedWith='" & TxtLinkedWith.Text & "', MAC='" & TxtMAC.Text & "', type='" & TxtType.Text & "', info='" & TxtInfo.Text & "' , Benutzer='" & TxtBenutzername.Text & "', passwort='" & TxtKennwort.Text & "' , link='" & TxtLink.Text & "', Modell='" & TxtModell.Text & "', QINFO='" & TxtQuickInfo.Text & "', Seriennummer='" & TxtSeriennummer.Text & "' " & SQLWhere & " AND Host='" & HostA & "'"
|
|
|
|
cmd.ExecuteNonQuery()
|
|
Catch ex As Exception
|
|
MsgBox("Hostspeichern(): " & ex.Message)
|
|
End Try
|
|
con.Close()
|
|
End If
|
|
|
|
End Function
|
|
|
|
Private Sub CmdIPUp_Click(sender As Object, e As EventArgs) Handles CmdIPUp.Click
|
|
abfrage_aenderungenspeichern()
|
|
If HostA < 255 Then
|
|
HostA = HostA + 1
|
|
importiere(StandA, NetA, HostA)
|
|
Else HostA = 254
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub CmdIPDown_Click(sender As Object, e As EventArgs) Handles CmdIPDown.Click
|
|
abfrage_aenderungenspeichern()
|
|
If HostA > 1 Then
|
|
HostA = HostA - 1
|
|
importiere(StandA, NetA, HostA)
|
|
Else HostA = 1
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub CmdForward_Click(sender As Object, e As EventArgs) Handles CmdForward.Click
|
|
abfrage_aenderungenspeichern()
|
|
Try
|
|
con.Open()
|
|
Dim ds As New DataSet()
|
|
Dim dataadapter As New SqlDataAdapter("SELECT FQDN FROM Tbl_Netzwerkclients WHERE NWSTANDORT='" & StandA & "' AND NETNAME = '" & NetA & "' ORDER BY HOST", con)
|
|
dataadapter.Fill(ds)
|
|
Do Until HostA = 254
|
|
HostA = HostA + 1
|
|
For Each Row As DataRow In ds.Tables(0).Rows
|
|
'If HostA = Row.Item(0).ToString Then
|
|
If Row.Item(0) IsNot Nothing Then
|
|
LbLDebug.Text &= Row.Item(0).ToString & vbCrLf
|
|
HostA = Row.Item(0).ToString
|
|
LbLDebug.Text &= "Host A: " & HostA
|
|
con.Close()
|
|
importiere(StandA, NetA, HostA)
|
|
Exit Sub
|
|
End If
|
|
Next
|
|
Loop
|
|
|
|
con.Close()
|
|
Catch ex As Exception
|
|
MsgBox("Forward: " & ex.Message & vbCrLf & HostA)
|
|
con.Close()
|
|
End Try
|
|
|
|
End Sub
|
|
|
|
Private Sub CmdBack_Click(sender As Object, e As EventArgs) Handles CmdBack.Click
|
|
abfrage_aenderungenspeichern()
|
|
Try
|
|
con.Open()
|
|
Dim ds As New DataSet()
|
|
Dim dataadapter As New SqlDataAdapter("SELECT HOST FROM Tbl_Netzwerkclients WHERE NWSTANDORT='" & StandA & "' AND NETNAME = '" & NetA & "' ORDER BY HOST", con)
|
|
dataadapter.Fill(ds)
|
|
Do Until HostA = 1
|
|
HostA = HostA - 1
|
|
For Each Row As DataRow In ds.Tables(0).Rows
|
|
If HostA = Row.Item(0).ToString Then
|
|
LbLDebug.Text &= Row.Item(0).ToString & vbCrLf
|
|
HostA = Row.Item(0).ToString
|
|
LbLDebug.Text &= "Host A: " & HostA
|
|
con.Close()
|
|
importiere(StandA, NetA, HostA)
|
|
Exit Sub
|
|
End If
|
|
Next
|
|
Loop
|
|
|
|
con.Close()
|
|
Catch ex As Exception
|
|
MsgBox("Forward: " & ex.Message)
|
|
con.Close()
|
|
End Try
|
|
|
|
End Sub
|
|
|
|
Private Sub TxtHost_KeyUp_Enter(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TxtHost.KeyUp ', TxtHost.TextChanged
|
|
Try
|
|
If e.KeyValue = Keys.Enter Then
|
|
HostA = TxtHost.Text
|
|
importiere(StandA, NetA, HostA)
|
|
End If
|
|
Catch
|
|
End Try
|
|
End Sub
|
|
|
|
Private Sub CmdIPErstellen_Click(sender As Object, e As EventArgs)
|
|
HostErstellen()
|
|
End Sub
|
|
|
|
Private Sub CmdCopy_Click(sender As Object, e As EventArgs) Handles CmdCopy.Click
|
|
Dim FQDN, Type, IP As String
|
|
Class1.GetFQDNandType(TxtIP.Text, FQDN, Type)
|
|
Class1.Host2IP(TxtHost.Text, StandA, NetA, IP)
|
|
If FQDN = "" And Type = "" Then
|
|
HostA = TxtHost.Text
|
|
Try
|
|
con.Open()
|
|
|
|
'cmd.CommandText = "INSERT INTO Tbl_Netzwerkclients (Host, IPAdresse, NWStandort, NetName) VALUES ('" & HostA & "', '" & TxtIP.Text & "','" & Main.SenderStandort & "', '" & Main.SenderNetzwerk & "') "
|
|
'cmd.ExecuteNonQuery()
|
|
|
|
cmd.CommandText = "UPDATE TbL_Netzwerkclients Set FQDN='" & TxtName.Text & "', Standort='" & TxtStandort.Text & "', Linked='" & Linked & "', LinkedWith='" & TxtLinkedWith.Text & "', MAC='" & TxtMAC.Text & "', type='" & TxtType.Text & "', info='" & TxtInfo.Text & "' , Benutzer='" & TxtBenutzername.Text & "', passwort='" & TxtKennwort.Text & "' , link='" & TxtLink.Text & "', Modell='" & TxtModell.Text & "', QINFO='" & TxtQuickInfo.Text & "', Seriennummer='" & TxtSeriennummer.Text & "' WHERE IPAdresse = '" & IP & "'"
|
|
cmd.ExecuteNonQuery()
|
|
|
|
Catch ex As Exception
|
|
MsgBox("Hostspeichern(): " & ex.Message)
|
|
End Try
|
|
con.Close()
|
|
Else
|
|
MsgBox("Ziel ist bereits mit " & FQDN & " belegt")
|
|
End If
|
|
MsgBox("Host kopiert!")
|
|
HostA = TxtHost.Text
|
|
importiere(StandA, NetA, HostA)
|
|
End Sub
|
|
|
|
Private Function IPErstellen()
|
|
Dim nwaddress As String
|
|
|
|
Try
|
|
con.Open()
|
|
cmd.CommandText = "SELECT nwaddress FROM Tbl_Netzwerke where Netzwerkname ='" & NetzID & "'"
|
|
reader = cmd.ExecuteReader()
|
|
Do While reader.Read()
|
|
nwaddress = reader("nwaddress")
|
|
Loop
|
|
con.Close()
|
|
|
|
con.Open()
|
|
cmd.CommandText = "SELECT * FROM Tbl_Netzwerkclients WHERE IPAdresse = '" & nwaddress & TxtHost.Text & "'"
|
|
cmd.ExecuteNonQuery()
|
|
reader = cmd.ExecuteReader()
|
|
If reader.Read Then
|
|
MsgBox("Die IP Adresse " & nwaddress & TxtHost.Text & " ist bereits belegt!")
|
|
Return ("Fehler")
|
|
con.Close()
|
|
Exit Function
|
|
End If
|
|
con.Close()
|
|
TxtIP.Text = nwaddress & TxtHost.Text
|
|
|
|
|
|
Catch exgen As Exception
|
|
MsgBox("Fehler beim Generieren der IP Adresse: " & vbCrLf & exgen.Message)
|
|
End Try
|
|
con.Close()
|
|
End Function
|
|
|
|
|
|
Private Function HostErstellen()
|
|
|
|
IPErstellen()
|
|
|
|
Try
|
|
HostA = TxtHost.Text
|
|
con.Open()
|
|
cmd.CommandText = "INSERT INTO Tbl_Netzwerkclients (Host, IPAdresse, NWStandort, NetName) VALUES ('" & HostA & "', '" & TxtIP.Text & "','" & Main.SenderStandort & "', '" & Main.SenderNetzwerk & "') "
|
|
cmd.ExecuteNonQuery()
|
|
cmd.CommandText = "UPDATE TbL_Netzwerkclients Set IPAdresse = '" & TxtIP.Text & "', FQDN='" & TxtName.Text & "', Standort='" & TxtStandort.Text & "', Linked='" & Linked & "', LinkedWith='" & LinkedWith & "', MAC='" & TxtMAC.Text & "', type='" & TxtType.Text & "', info='" & TxtInfo.Text & "' , Benutzer='" & TxtBenutzername.Text & "', passwort='" & TxtKennwort.Text & "' , link='" & TxtLink.Text & "', Modell='" & TxtModell.Text & "', QINFO='" & TxtQuickInfo.Text & "', Seriennummer='" & TxtSeriennummer.Text & "' " & SQLWhere & " AND Host='" & HostA & "'"
|
|
|
|
cmd.ExecuteNonQuery()
|
|
|
|
|
|
Catch exin As Exception
|
|
MsgBox("exin: " & exin.Message)
|
|
End Try
|
|
con.Close()
|
|
|
|
End Function
|
|
|
|
Private Sub CmdDelete_Click(sender As Object, e As EventArgs) Handles CmdDelete.Click
|
|
Dim linked As Boolean
|
|
linked = ChkLinked.Checked
|
|
If MessageBox.Show("Eintrag " & HostA & " wirklich löschen?", "Hosteintrag löschen", MessageBoxButtons.OKCancel) = DialogResult.OK Then
|
|
deleteHost()
|
|
importiere(StandA, NetA, HostA)
|
|
ElseIf DialogResult.Cancel Then
|
|
Exit Sub
|
|
End If
|
|
If linked = False Then
|
|
If MsgBox("Dazugehörigen Ordner im Dateisystem löschen?", MessageBoxButtons.YesNo + MsgBoxStyle.DefaultButton2, "Dateien löschen") = DialogResult.Yes Then
|
|
'MsgBox("Er. Mayank Nainwal", MsgBoxStyle.YesNoCancel + MsgBoxStyle.DefaultButton2, "Default Button is NO ?")
|
|
deleteFiles(HostA)
|
|
ElseIf DialogResult.No Then
|
|
Exit Sub
|
|
End If
|
|
End If
|
|
|
|
Class1.RefillNW(Netzwerk)
|
|
importiere(Main.SenderStandort, Main.SenderNetzwerk, Main.SenderHost)
|
|
LblInfo.Text = "Netzwerk: " & Main.SenderStandort & "_" & Main.SenderNetzwerk & ""
|
|
End Sub
|
|
|
|
Private Sub ChkKennwortAnzeigen_CheckedChanged(sender As Object, e As EventArgs) Handles ChkKennwortAnzeigen.CheckedChanged
|
|
If ChkKennwortAnzeigen.Checked Then
|
|
TxtKennwort.PasswordChar = ""
|
|
Else
|
|
TxtKennwort.PasswordChar = "*"
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub CmdDateien_Click(sender As Object, e As EventArgs) Handles CmdDateien.Click
|
|
explorerstarten()
|
|
End Sub
|
|
|
|
Private Function explorerstarten()
|
|
Main.werbinich()
|
|
Dim Path As String
|
|
If Linked = "1" Then
|
|
Dim ds As New DataSet()
|
|
Dim IPA As String = TxtLinkedWith.Text
|
|
dbload()
|
|
con.Open()
|
|
|
|
Dim da As New SqlDataAdapter("SELECT * FROM Tbl_NetzwerkClients WHERE IPAdresse='" & IPA & "'", con)
|
|
da.Fill(ds)
|
|
|
|
con.Close()
|
|
|
|
Path = Class1.FilePath & "\" & ds.Tables(0).Rows(0).Item("NWStandort") & "_" & ds.Tables(0).Rows(0).Item("NetName") & "\" & ds.Tables(0).Rows(0).Item("Host")
|
|
Else
|
|
Path = Class1.FilePath & "\" & NetzID & "\" & HostA
|
|
End If
|
|
|
|
If IO.Directory.Exists(path) Then
|
|
Process.Start(path)
|
|
Else
|
|
IO.Directory.CreateDirectory(path)
|
|
Process.Start(path)
|
|
End If
|
|
'MsgBox(path)
|
|
End Function
|
|
|
|
Private Sub LblLink_DOubleClick(sender As Object, e As EventArgs) Handles LblLink.DoubleClick
|
|
|
|
Dim URL As String
|
|
Try
|
|
URL = TxtLink.Text
|
|
If URL.Contains("http") Or URL.Contains("https") Then
|
|
Process.Start(URL)
|
|
ElseIf URL = "" Then
|
|
Exit Sub
|
|
Else
|
|
Dim mstsc As New Process
|
|
mstsc.StartInfo.FileName = "mstsc.exe"
|
|
mstsc.StartInfo.Arguments = " /v: " & URL
|
|
mstsc.Start()
|
|
|
|
End If
|
|
|
|
' Process.Start("mstsc.exe", "/v: dc01")
|
|
Catch ex As Exception
|
|
'MsgBox(ex.Message)
|
|
|
|
End Try
|
|
End Sub
|
|
|
|
Private Sub LblLink_Click(sender As Object, e As EventArgs) Handles LblLink.Click
|
|
|
|
End Sub
|
|
|
|
|
|
Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles TxtQuickInfo.TextChanged
|
|
|
|
End Sub
|
|
|
|
Private Sub ChkMulti_CheckedChanged(sender As Object, e As EventArgs) Handles ChkLinked.CheckedChanged
|
|
If ChkLinked.Checked Then
|
|
TxtLinkedWith.Enabled = True
|
|
CmdLink.Visible = True
|
|
Linked = "1"
|
|
Else
|
|
TxtLinkedWith.Enabled = False
|
|
CmdLink.Visible = False
|
|
Linked = "0"
|
|
LinkedWith = ""
|
|
TxtLinkedWith.Text = ""
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub CmdLink_Click(sender As Object, e As EventArgs) Handles CmdLink.Click
|
|
LinkedWith = TxtLinkedWith.Text
|
|
' HostSpeichern()
|
|
''Linked is linked?
|
|
con.Open()
|
|
cmd.CommandText = "SELECT * FROM TbL_Netzwerkclients WHERE IPAdresse='" & LinkedWith & "'"
|
|
cmd.ExecuteNonQuery()
|
|
reader = cmd.ExecuteReader()
|
|
Do While reader.Read()
|
|
If checknull("Linked") = "1" Then
|
|
LinkedWith = checknull("LinkedWith")
|
|
TxtLinkedWith.Text = LinkedWith
|
|
End If
|
|
Loop
|
|
|
|
reader.Close()
|
|
con.Close()
|
|
|
|
''Link erstellen
|
|
con.Open()
|
|
cmd.CommandText = "UPDATE TbL_Netzwerkclients SET Linked='" & Linked & "', LinkedWith='" & LinkedWith & "' WHERE IPAdresse = '" & TxtIP.Text & "' "
|
|
cmd.ExecuteNonQuery()
|
|
con.Close()
|
|
HostSpeichern("machlink")
|
|
importiere(Main.SenderStandort, Main.SenderNetzwerk, TxtHost.Text)
|
|
HostSpeichern("speichern")
|
|
End Sub
|
|
|
|
Private Function LinkedMasterUpdate()
|
|
Dim slaveds As New DataSet()
|
|
|
|
Dim dt As New DataTable()
|
|
LbLDebug.Text = ""
|
|
Try
|
|
dbload()
|
|
con.Open()
|
|
|
|
Dim dataadapterslave As New SqlDataAdapter("SELECT * FROM Tbl_NetzwerkClients WHERE Linked='1'", con)
|
|
dataadapterslave.Fill(slaveds)
|
|
|
|
|
|
For Each dr As DataRow In slaveds.Tables(0).Rows
|
|
Dim LinkedWith As String = dr.Item("LinkedWith")
|
|
Dim masterds As New DataSet()
|
|
Dim dataadaptermaster As New SqlDataAdapter("SELECT * FROM Tbl_NetzwerkClients WHERE IPAdresse='" & LinkedWith & "'", con)
|
|
|
|
dataadaptermaster.Fill(masterds)
|
|
|
|
LbLDebug.Text &= "MasterFQDN: " & masterds.Tables(0).Rows(0).Item("FQDN") & " Slave Linkedwith: " & LinkedWith & " Slave IP: " & dr.Item("IpAdresse") & vbCrLf
|
|
'' Linked Slave speichern
|
|
cmd.ExecuteNonQuery()
|
|
cmd.CommandText = "UPDATE TbL_Netzwerkclients Set FQDN='" & masterds.Tables(0).Rows(0).Item("FQDN") & "', Standort='" & masterds.Tables(0).Rows(0).Item("Standort") & "', MAC='" & masterds.Tables(0).Rows(0).Item("MAC") & "', type='" & masterds.Tables(0).Rows(0).Item("Type") & "', info='" & masterds.Tables(0).Rows(0).Item("Info") & "' , Benutzer='" & masterds.Tables(0).Rows(0).Item("Benutzer") & "', passwort='" & masterds.Tables(0).Rows(0).Item("Passwort") & "' , link='" & masterds.Tables(0).Rows(0).Item("Link") & "', Modell='" & masterds.Tables(0).Rows(0).Item("Modell") & "', QINFO='" & masterds.Tables(0).Rows(0).Item("QINFO") & "', Seriennummer='" & masterds.Tables(0).Rows(0).Item("Seriennummer") & "' WHERE IPAdresse = '" & dr.Item("IpAdresse") & "'"
|
|
cmd.ExecuteNonQuery()
|
|
Next
|
|
|
|
con.Close()
|
|
Catch ex As Exception
|
|
MsgBox("LinkedMasterUpdate(): " & ex.Message)
|
|
con.Close()
|
|
End Try
|
|
End Function
|
|
|
|
Private Sub CmdHostLink_Click(sender As Object, e As EventArgs) Handles CmdHostLink.Click
|
|
Dim URL As String
|
|
Try
|
|
URL = TxtLink.Text
|
|
If URL.Contains("http") Or URL.Contains("https") Then
|
|
Process.Start(TxtLink.Text)
|
|
ElseIf URL = "" Then
|
|
Exit Sub
|
|
Else
|
|
Dim mstsc As New Process
|
|
mstsc.StartInfo.FileName = "mstsc.exe"
|
|
mstsc.StartInfo.Arguments = " /v: " & TxtLink.Text
|
|
mstsc.Start()
|
|
|
|
End If
|
|
|
|
' Process.Start("mstsc.exe", "/v: dc01")
|
|
Catch ex As Exception
|
|
'MsgBox(ex.Message)
|
|
|
|
End Try
|
|
End Sub
|
|
|
|
Private Sub CmdTest_Click(sender As Object, e As EventArgs) Handles CmdTest.Click
|
|
Dim FQDN, Type As String
|
|
Class1.GetFQDNandType(TxtIP.Text, FQDN, Type)
|
|
|
|
LbLDebug.Text = "FQDN: " & FQDN & vbCrLf & "Type: " & Type
|
|
|
|
End Sub
|
|
|
|
|
|
|
|
Public Function IPChange()
|
|
Dim dspath As New DataSet()
|
|
Dim alteip As String = TxtIP.Text
|
|
Dim Path As String
|
|
Dim HostOld As String
|
|
Dim NewPath As String
|
|
|
|
NewPath = Class1.FilePath & "\" & NetzID & "\" & TxtHost.Text
|
|
|
|
If IPErstellen() = "Fehler" Then
|
|
con.Close()
|
|
Exit Function
|
|
ElseIf IO.Directory.Exists(NewPath) Then
|
|
If MsgBox("Zielordner existiert bereits. Löschen?", MsgBoxStyle.OkCancel) = MsgBoxResult.Cancel Then
|
|
con.Close()
|
|
Exit Function
|
|
Else
|
|
deleteFiles(TxtHost.Text)
|
|
End If
|
|
Else
|
|
'else -> erstellen der IP ergab keinen Fehler, Zielordner ist nicht vorhanden -> alles paletti
|
|
End If
|
|
|
|
dbload()
|
|
con.Open()
|
|
Dim da As New SqlDataAdapter("SELECT * FROM Tbl_NetzwerkClients WHERE IPAdresse='" & alteip & "'", con)
|
|
da.Fill(dspath)
|
|
HostOld = dspath.Tables(0).Rows(0).Item("Host")
|
|
|
|
cmd.CommandText = "Update Tbl_Netzwerkclients SET IPAdresse = '" & TxtIP.Text & "', Host = '" & TxtHost.Text & "' WHERE IPAdresse = '" & alteip & "'"
|
|
cmd.ExecuteNonQuery()
|
|
|
|
Dim ds As New DataSet
|
|
Dim dt As New DataTable()
|
|
Dim dataadapter As New SqlDataAdapter("SELECT * FROM Tbl_NetzwerkClients WHERE LinkedWith='" & alteip & "'", con)
|
|
dataadapter.Fill(ds)
|
|
con.Close()
|
|
|
|
Dim i As Integer = 0
|
|
Dim slaveip As String
|
|
For Each dr As DataRow In ds.Tables(0).Rows
|
|
slaveip = ds.Tables(0).Rows(i).Item("IPAdresse")
|
|
con.Open()
|
|
cmd.CommandText = "Update Tbl_Netzwerkclients SET LinkedWith = '" & TxtIP.Text & "' WHERE IPAdresse = '" & slaveip & "'"
|
|
cmd.ExecuteNonQuery()
|
|
con.Close()
|
|
i = i + 1
|
|
Next
|
|
con.Close()
|
|
|
|
|
|
If Linked = "1" Then
|
|
'Dim IPA As String = TxtLinkedWith.Text
|
|
'Path = Class1.FilePath & "\" & ds.Tables(0).Rows(0).Item("NWStandort") & "_" & ds.Tables(0).Rows(0).Item("NetName") & "\" & ds.Tables(0).Rows(0).Item("Host")
|
|
Exit Function
|
|
Else
|
|
Path = Class1.FilePath & "\" & NetzID & "\" & HostOld
|
|
|
|
End If
|
|
|
|
If IO.Directory.Exists(path) Then
|
|
My.Computer.FileSystem.RenameDirectory(Path, TxtHost.Text)
|
|
End If
|
|
importiere(Main.SenderStandort, Main.SenderNetzwerk, TxtHost.Text)
|
|
End Function
|
|
|
|
Public Function abfrage_aenderungenspeichern()
|
|
If geaendert = False Then
|
|
Exit Function
|
|
ElseIf geaendert = True Then
|
|
Dim result As Integer = MsgBox("Änderungen speichern?", MsgBoxStyle.YesNo)
|
|
If result = MsgBoxResult.No Then
|
|
Exit Function
|
|
ElseIf result = MsgBoxResult.Yes Then
|
|
HostSpeichern("speichern")
|
|
LinkedMasterUpdate()
|
|
End If
|
|
End If
|
|
geaendert = False
|
|
End Function
|
|
|
|
Private Sub CmdIPChange_Click(sender As Object, e As EventArgs) Handles CmdIPChange.Click
|
|
IPChange()
|
|
End Sub
|
|
|
|
Private Sub TxtIP_TextChanged(sender As Object, e As EventArgs) Handles TxtStandort.TextChanged, TxtIP.TextChanged, TxtName.TextChanged, TxtModell.TextChanged, TxtQuickInfo.TextChanged, TxtType.TextChanged, TxtSeriennummer.TextChanged, TxtMAC.TextChanged, TxtInfo.TextChanged, TxtBenutzername.TextChanged, TxtKennwort.TextChanged, TxtLink.TextChanged
|
|
geaendert = True
|
|
LbLDebug.Text = "geändert"
|
|
End Sub
|
|
|
|
Private Sub MitHTTPFüllenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles MitHTTPFüllenToolStripMenuItem.Click
|
|
TxtLink.Text = "http://" & TxtIP.Text & "/"
|
|
End Sub
|
|
|
|
Private Function FillAutocomplete()
|
|
Class1.Autocomplete(TxtType, "Type", "Tbl_Netzwerkclients")
|
|
Class1.Autocomplete(TxtStandort, "Standort", "Tbl_Netzwerkclients")
|
|
Class1.Autocomplete(TxtModell, "Modell", "Tbl_Netzwerkclients")
|
|
Class1.Autocomplete(TxtBenutzername, "Benutzer", "Tbl_Netzwerkclients")
|
|
End Function
|
|
|
|
Private Sub DebugToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles DebugToolStripMenuItem.Click
|
|
PanDebug.Visible = Not PanDebug.Visible
|
|
End Sub
|
|
|
|
Private Sub TxtHost_TextChanged(sender As Object, e As EventArgs) Handles TxtHost.TextChanged
|
|
TxtIP.Text = ""
|
|
geaendert = True
|
|
'TxtHost.BackColor = Color.Red
|
|
End Sub
|
|
|
|
''SCHLIESSEN''
|
|
|
|
Private Sub Hostbearbeiten_Closing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
|
|
abfrage_aenderungenspeichern()
|
|
'Main.allesladen()
|
|
Main.dgvload_filter(Main.Suchbegriff)
|
|
End Sub
|
|
|
|
Private Sub CmdAbbrechen_Click(sender As Object, e As EventArgs) Handles CmdAbbrechen.Click
|
|
abfrage_aenderungenspeichern()
|
|
'Main.allesladen()
|
|
Main.dgvload_filter(Main.Suchbegriff)
|
|
Close()
|
|
End Sub
|
|
|
|
Private Sub NetzwerkÄndernToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles HostVerschiebenToolStripMenuItem.Click
|
|
HostVerschieben.Show()
|
|
End Sub
|
|
End Class |