Public Class uscntr_TSSitzungen Dim Client As Boolean = False Private Sub uscntr_TSSitzungen_Load(sender As Object, e As EventArgs) Handles Me.Load Class1.EnableDoubleBuffered(dgvTSSitzungen) Load2DGV() End Sub Function Load2DGV() ' (Optional ByVal Client As Boolean = False) If Client = False Then Dim ds As New DataSet cSQL.SQL2DS("SELECT * FROM TbL_TSSitzungen WHERE Name LIKE '" & ReturnOfTheWhere() & "' OR TSServer LIKE '" & ReturnOfTheWhere() & "' ORDER BY NAME", ds) With dgvTSSitzungen .RowHeadersVisible = False .DataSource = ds.Tables(0) .Columns("Domain").Visible = False .Columns("LastLogon").Visible = False .Columns("BenutzerAnmeldeName").Visible = False .Columns("Name").Width = 110 'AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill .Columns("TeamviewerID").Width = 80 .Columns("TSServer").Width = 55 .AutoResizeColumn(1) End With lblAnzahl.Text = dgvTSSitzungen.Rows.Count LoadTSServer() Else Dim ds As New DataSet 'cSQL.SQLCommand("DELETE FROM TbL_ThinClients where LastReport < (dateadd(HOUR, -1, getdate()))") cSQL.SQL2DS("SELECT * FROM TbL_ThinClients WHERE Name LIKE '" & ReturnOfTheWhere() & "' OR ClientName LIKE '" & ReturnOfTheWhere() & "' ORDER BY NAME", ds) With dgvTSSitzungen .RowHeadersVisible = False .DataSource = ds.Tables(0) '.Columns("Domain").Visible = False '.Columns("LastLogon").Visible = False '.Columns("BenutzerAnmeldeName").Visible = False '.Columns("Name").Width = 110 'AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill '.Columns("TeamviewerID").Width = 80 '.Columns("TSServer").Width = 55 .AutoResizeColumn(1) End With lblAnzahl.Text = dgvTSSitzungen.Rows.Count End If End Function Private Sub dgvTSSitzungen_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles dgvTSSitzungen.CellDoubleClick 'dgvTSSitzungen.CellContentDoubleClick, Dim sitzung As String = Class1.DBNull2emptyString(dgvTSSitzungen.CurrentRow.Cells("TeamviewerID").Value) Ext_Programme.StartTeamviewer(sitzung) End Sub Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick Load2DGV() End Sub Private Sub RefreshToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles CmdUpdate.Click, UpdateToolStripMenuItem.Click Load2DGV() End Sub Private Sub chkAutoUpdate_CheckedChanged(sender As Object, e As EventArgs) Handles chkAutoUpdate.CheckedChanged If chkAutoUpdate.Checked Then Timer1.Enabled = True Else Timer1.Enabled = False End If End Sub Private Function LoadTSServer() Dim ds As New DataSet cSQL.SQLCommand("DELETE FROM TbL_TSSitzungen where LastReport < (dateadd(HOUR, -1, getdate()))") cSQL.SQL2DS("SELECT DISTINCT TSServer, Domain FROM TbL_TSSitzungen", ds) Class1.TerminalServerList.Clear() For Each r As DataRow In ds.Tables(0).Rows Class1.TerminalServerList.Add(r.Item(0).ToString & "." & r.Item(1).ToString) Next End Function Private Sub Button1_Click(sender As Object, e As EventArgs) Handles cmdNachricht.Click Dim send As New frmLeer send.Text = "Nachricht senden" Dim usrcntrl As New uscntr_SendMSG usrcntrl.Dock = DockStyle.Fill : send.PanMain.Controls.Add(usrcntrl) send.Show() End Sub Private Sub NachrichtSendenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles NachrichtSendenToolStripMenuItem.Click Dim send As New frmLeer send.Text = "Nachricht senden an " & dgvTSSitzungen.CurrentRow.Cells("Name").Value.ToString Dim usrcntrl As New uscntr_SendMSG usrcntrl.recuser.Name = dgvTSSitzungen.CurrentRow.Cells("Name").Value.ToString usrcntrl.recuser.BenutzerAnmeldeName = dgvTSSitzungen.CurrentRow.Cells("BenutzerAnmeldeName").Value.ToString usrcntrl.recuser.TSServer = dgvTSSitzungen.CurrentRow.Cells("TSServer").Value.ToString & "." & dgvTSSitzungen.CurrentRow.Cells("Domain").Value.ToString usrcntrl.Dock = DockStyle.Fill : send.PanMain.Controls.Add(usrcntrl) send.Show() End Sub Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles TextBox1.TextChanged Load2DGV() '(TextBox1.Text) End Sub Function ReturnOfTheWhere() Dim ding As String = "%{0}%" Return String.Format(ding, TextBox1.Text) End Function Private Sub btnReset_Click(sender As Object, e As EventArgs) Handles btnReset.Click TextBox1.Text = "" End Sub Private Sub VerbindenMitTeamVToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles VerbindenMitTeamVToolStripMenuItem.Click Dim sitzung As String = Class1.DBNull2emptyString(dgvTSSitzungen.CurrentRow.Cells("TeamviewerID").Value) Ext_Programme.StartTeamviewer(sitzung) End Sub Private Sub btnClick(sender As Object, e As EventArgs) Handles btnSitzung.Click, btnClient.Click Select Case sender.name Case "btnSitzung" btnSitzung.BackColor = Color.Green : btnClient.BackColor = Color.DarkGray Client = False Case "btnClient" btnClient.BackColor = Color.Red : btnSitzung.BackColor = Color.DarkGray Client = True End Select cmdNachricht.Enabled = Not Client Load2DGV() End Sub End Class