Offline Modus Verbesserungen, SMB Share für User FIX

This commit is contained in:
ms
2025-03-18 09:03:36 +01:00
parent 130faf71ef
commit d275cf320d
18 changed files with 626 additions and 123 deletions

View File

@@ -7,7 +7,7 @@ Public Class Form1
Dim aktiv As Boolean = False
Dim WeiterleitungsZiel As String = ""
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Class1.CheckDebug()
If getNotrufservice() = True Then
getWeiterleitungsziel()

View File

@@ -1,43 +1,57 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
</configSections>
<connectionStrings>
<add name="Dokumentation.My.MySettings.DokuConnectionString" connectionString="Data Source=sqlguide01.verag.ost.dmn;Initial Catalog=Doku;Integrated Security=True" providerName="System.Data.SqlClient"/>
</connectionStrings>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8"/>
</startup>
<configSections>
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</configSections>
<connectionStrings>
<add name="Dokumentation.My.MySettings.DokuConnectionString" connectionString="Data Source=sqlguide01.verag.ost.dmn;Initial Catalog=Doku;Integrated Security=True" providerName="System.Data.SqlClient" />
</connectionStrings>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8" />
</startup>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="itextsharp" publicKeyToken="8354ae6d2174ddca" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-5.5.13.1" newVersion="5.5.13.1"/>
<assemblyIdentity name="itextsharp" publicKeyToken="8354ae6d2174ddca" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.5.13.1" newVersion="5.5.13.1" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Spire.Pdf" publicKeyToken="663f351905198cb3" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-6.3.10.0" newVersion="6.3.10.0"/>
<assemblyIdentity name="Spire.Pdf" publicKeyToken="663f351905198cb3" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-6.3.10.0" newVersion="6.3.10.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Dynamsoft.PDF" publicKeyToken="298ad97013b423eb" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-8.0.0.510" newVersion="8.0.0.510"/>
<assemblyIdentity name="Dynamsoft.PDF" publicKeyToken="298ad97013b423eb" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-8.0.0.510" newVersion="8.0.0.510" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="ChilkatDotNet47" publicKeyToken="eb5fc1fc52ef09bd" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-9.5.0.88" newVersion="9.5.0.88"/>
<assemblyIdentity name="ChilkatDotNet47" publicKeyToken="eb5fc1fc52ef09bd" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-9.5.0.88" newVersion="9.5.0.88" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Dynamsoft.Twain" publicKeyToken="298ad97013b423eb" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-8.0.0.510" newVersion="8.0.0.510"/>
<assemblyIdentity name="Dynamsoft.Twain" publicKeyToken="298ad97013b423eb" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-8.0.0.510" newVersion="8.0.0.510" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Dynamsoft.Forms.Viewer" publicKeyToken="298ad97013b423eb" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-8.0.0.510" newVersion="8.0.0.510"/>
<assemblyIdentity name="Dynamsoft.Forms.Viewer" publicKeyToken="298ad97013b423eb" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-8.0.0.510" newVersion="8.0.0.510" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Dynamsoft.ImageCore" publicKeyToken="298ad97013b423eb" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-8.0.0.510" newVersion="8.0.0.510"/>
<assemblyIdentity name="Dynamsoft.ImageCore" publicKeyToken="298ad97013b423eb" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-8.0.0.510" newVersion="8.0.0.510" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
<entityFramework>
<providers>
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
<provider invariantName="System.Data.SQLite.EF6" type="System.Data.SQLite.EF6.SQLiteProviderServices, System.Data.SQLite.EF6" />
</providers>
</entityFramework>
<system.data>
<DbProviderFactories>
<remove invariant="System.Data.SQLite.EF6" />
<add name="SQLite Data Provider (Entity Framework 6)" invariant="System.Data.SQLite.EF6" description=".NET Framework Data Provider for SQLite (Entity Framework 6)" type="System.Data.SQLite.EF6.SQLiteProviderFactory, System.Data.SQLite.EF6" />
<remove invariant="System.Data.SQLite" /><add name="SQLite Data Provider" invariant="System.Data.SQLite" description=".NET Framework Data Provider for SQLite" type="System.Data.SQLite.SQLiteFactory, System.Data.SQLite" /></DbProviderFactories>
</system.data>
</configuration>

View File

@@ -4,6 +4,7 @@ Imports System.IO
Public Class Class1
Public Shared offline As Boolean = False
Public sAppPath As String = Application.StartupPath
'Public Shared DBConString As String = "Server=NBMIESENBECK\SPIELWIESE;Initial Catalog=Doku;User ID=sa;Password=verag#3;Connection Timeout=5;"
Public Shared DBConString As String
@@ -12,6 +13,8 @@ Public Class Class1
Public Shared DBAdmin As String = "[SQLGuide01.verag.ost.dmn].ADMIN"
'Public Shared DBDoku As String = "Server=SQLGuide01.verag.ost.dmn\Verag;Initial Catalog=Doku;User ID=sa;Password=BmWr501956;Connection Timeout=5;"
Public Shared DBDoku As String = "Server=SQLGuide01.verag.ost.dmn\Verag;Initial Catalog=Doku;User ID=AppUser;Password=yp/THDd?xM+pZ$;Connection Timeout=5;"
Public Shared lokalDBDoku As String = "Server=localhost\SQLExpress;Initial Catalog=Doku;Integrated Security=SSPI;Connection Timeout=5;"
'Public Shared DBDoku As String = "Server=dokusql.verag.ost.dmn\sqlexpress;Initial Catalog=Doku;User ID=sa;Password=BmWr501956;Connection Timeout=5;"
Public Shared DBDokuTest As String = "Server=DEVELOPER.verag.ost.dmn\DEVSQL;Initial Catalog=Doku;User ID=AppUser;Password=yp/THDd?xM+pZ$;Connection Timeout=5;"
'Public Shared FilePath As String = "\\192.168.0.253\backup\temp_Sebastian\Spielwiese\Doku"
@@ -50,6 +53,8 @@ Public Class Class1
If i > 0 Then
If s = "/d" Or s = "-d" Then
Startparameter = "debug"
ElseIf s = "/offline" Or s = "-offline" Then
Class1.offline = True
Else
End If
End If
@@ -61,6 +66,8 @@ Public Class Class1
Class1.DBConString = DBDokuTest '"Server=DEVELOPER.verag.ost.dmn\DEVSQL;Initial Catalog=Doku;User ID=sa;Password=BmWr501956;Connection Timeout=5;"
Class1.FilePath = "\\192.168.0.253\backup\temp_Sebastian\DokuTest"
ElseIf offline = True Then
DBConString = lokalDBDoku
Else
Class1.DBConString = DBDoku '"Server=sqlguide01.verag.ost.dmn;Initial Catalog=Doku;User ID=sa;Password=BmWr501956;Connection Timeout=5;"
Class1.FilePath = "\\DEVELOPER.verag.ost.dmn\f\EDV-Wartung\Dokumentation"

View File

@@ -115,7 +115,7 @@ Public Class cBerechtigungen
If ds.Tables(0).Rows.Count > 0 Then
Return ds.Tables(0).Rows(0).Item(0).ToString
Else
MsgBox("Keine Berechtigung gefunden")
If Not Class1.offline Then MsgBox("Keine Berechtigung gefunden")
Return "0"
End If
End Function

View File

@@ -71,6 +71,7 @@ Public Class cDomUser
End Function
Public Function getDomUserByID(ID As String)
If Class1.offline Then Exit Function
Dim ds As New DataSet
cSQL.SQL2DS("select " & SelectItems & " from [SQLGuide01.verag.ost.dmn].doku.dbo.tbl_domuser as Doku left join [SQLGuide01.verag.ost.dmn].ADMIN.dbo.tblMitarbeiter on mit_AliasAD_Username = du_sAMAc WHERE du_ID = '" & ID & "'", ds)
@@ -152,6 +153,7 @@ Public Class cDomUser
End If
End Function
Public Function getFromAvisoUser(Optional ByVal AvisoUser As String = "")
If Class1.offline Then Exit Function
If AvisoUser = "" Then
AvisoUser = Me.mit_username
End If
@@ -180,6 +182,7 @@ Public Class cDomUser
End Function
Public Function getFromAvisoUserLIST(AvisoUser As String)
If Class1.offline Then Exit Function
Dim ds As New DataSet
Dim AvisoUserList As New List(Of cDomUser)
cSQL.SQL2DS("select * from ADMIN.dbo.tblMitarbeiter where mit_username = '" & AvisoUser & "'", ds, Class1.DBADMINBuchhaltung)

View File

@@ -3,7 +3,7 @@ Imports Chilkat
Public Class cPascom
Dim API_USER_AUTHORIZATION = "bW9ieTpnWlhTSVprTnhmaUQxOEU="
Dim API_USER_AUTHORIZATION = ""
Property Arbeitsplatz As String = ""
Property Username As String = ""
Dim TelUrl As String = ""
@@ -14,9 +14,18 @@ Public Class cPascom
If ds.Tables(0).Rows.Count > 0 Then
TelUrl = ds.Tables(0).Rows(0).Item(0).ToString
End If
ds.Clear()
cSQL.SQL2DS("SELECT Parameter FROM [Doku].[dbo].[TbL_Dienste] where name = 'PascomAPICred'", ds)
If ds.Tables(0).Rows.Count > 0 Then
API_USER_AUTHORIZATION = ds.Tables(0).Rows(0).Item(0).ToString
End If
End Sub
Public Function Anmelden() As Boolean
If Arbeitsplatz.Length > 0 And Username.Length > 0 Then
Try
@@ -129,7 +138,7 @@ Public Class cPascom
End If
rest.AddHeader("Content-Type", "application/json")
rest.SetAuthBasic("moby", "XgDsFmMSutaMLA1")
rest.SetAuthBasic("qYAnX6SpQ62SK4ZZfi8IMRIHJ", "10vO6fO2CMVfL1P0hFuqWzvvh")
Dim json As New Chilkat.JsonObject
@@ -171,7 +180,7 @@ Public Class cPascom
Dim Resp_errorCode = jsonResp.StringOf("errorCode")
Target = jsonResp.StringOf("target")
' MsgBox("Hier!!!")
'MsgBox("Hier!!!")
Return True

View File

@@ -15,6 +15,95 @@ Public Class cSQL
con.Close()
End Sub
Sub UpdateDatenbankStruktur()
Dim conn As New SqlConnection(Class1.DBDoku)
Dim cmd As New SqlCommand("SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE = 'BASE TABLE'", conn)
conn.Open()
Dim reader As SqlDataReader = cmd.ExecuteReader()
While reader.Read()
Dim tableName As String = reader("TABLE_NAME").ToString()
Console.WriteLine("CREATE TABLE " & tableName)
' Hier kannst du dann den CREATE TABLE Befehl generieren
UpdateOrCreateTable(Class1.DBDoku, Class1.lokalDBDoku, tableName)
SyncDatenbank(tableName)
End While
conn.Close()
End Sub
Sub SyncDatenbank(tabelle As String)
Dim conn As New SqlConnection(Class1.lokalDBDoku)
Dim cmd As New SqlCommand($"
DELETE FROM {tabelle};
INSERT INTO {tabelle}
SELECT * FROM [sqlcluster.verag.ost.dmn].doku.dbo.{tabelle};", conn)
Try
conn.Open()
cmd.ExecuteNonQuery()
conn.Close()
Console.WriteLine("Datenbank erfolgreich synchronisiert!")
Catch ex As Exception
Console.WriteLine("Fehler bei der Synchronisation: " & ex.Message)
End Try
End Sub
Sub UpdateOrCreateTable(sqlServerConnectionString As String, localSqlServerConnectionString As String, tableName As String)
' SQL Server-Abfrage für die Spalteninformationen
Dim query As String = $"SELECT COLUMN_NAME, DATA_TYPE, CHARACTER_MAXIMUM_LENGTH, IS_NULLABLE FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '{tableName}'"
Dim columnDefinitions As New List(Of String)
' Abfrage für die Spaltenstruktur der Remote-Tabelle
Using con As New SqlConnection(sqlServerConnectionString)
con.Open()
Using cmd As New SqlCommand(query, con)
Using reader As SqlDataReader = cmd.ExecuteReader()
While reader.Read()
Dim columnName As String = reader("COLUMN_NAME").ToString()
Dim dataType As String = reader("DATA_TYPE").ToString()
If reader("CHARACTER_MAXIMUM_LENGTH") IsNot DBNull.Value Then
dataType &= $"({reader("CHARACTER_MAXIMUM_LENGTH").ToString()})"
If dataType = "varchar(-1)" Then dataType = "varchar(max)"
End If
Dim isNullable As String = If(reader("IS_NULLABLE").ToString() = "YES", "NULL", "NOT NULL")
columnDefinitions.Add($"{columnName} {dataType} {isNullable}")
End While
End Using
End Using
End Using
' Die lokale SQL Server-Datenbank, in der die Tabelle erstellt wird
Using localSqlCon As New SqlConnection(localSqlServerConnectionString)
localSqlCon.Open()
' Prüfen, ob die Tabelle bereits existiert
Dim tableExistsQuery As String = $"SELECT 1 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = '{tableName}'"
Using cmd As New SqlCommand(tableExistsQuery, localSqlCon)
Dim exists As Object = cmd.ExecuteScalar()
If exists Is Nothing Then
' Erstelle die Tabelle, wenn sie nicht existiert
Dim createTableSQL As String = $"CREATE TABLE {tableName} ({String.Join(", ", columnDefinitions)});"
Using createCmd As New SqlCommand(createTableSQL, localSqlCon)
createCmd.ExecuteNonQuery()
End Using
Else
' Falls die Tabelle bereits existiert, überprüfe und füge neue Spalten hinzu
For Each columnDef In columnDefinitions
Dim columnName As String = columnDef.Split(" ")(0)
Dim addColumnSQL As String = $"ALTER TABLE {tableName} ADD COLUMN {columnDef};"
Try
Using alterCmd As New SqlCommand(addColumnSQL, localSqlCon)
alterCmd.ExecuteNonQuery()
End Using
Catch ex As Exception
' Falls die Spalte bereits existiert, wird die Exception ignoriert
End Try
Next
End If
End Using
End Using
End Sub
Public Shared Sub UpdateSQL(ByRef table As String, ByRef values As String, ByRef where As String, Optional ByRef DBConnect As String = "")
If DBConnect = "" Then DBConnect = Class1.DBConString
Dim con As New SqlConnection

View File

@@ -0,0 +1,128 @@
Imports System.Data.SqlClient
Imports System.Data.SQLite
Public Class cSQL2SQLLite
Function Main(tableName As String)
Dim sqlServerConString = Class1.DBDoku
Dim sqliteFile As String = "C:\verag\offline_db.sqlite"
Dim sqliteConnString As String = $"Data Source={sqliteFile};Version=3;"
UpdateOrCreateTable(sqlServerConString, sqliteConnString, tableName)
CopyDataIncrementally(sqlServerConString, sqliteConnString, tableName)
End Function
Sub UpdateOrCreateTable(sqlServerConnectionString As String, localSqlServerConnectionString As String, tableName As String)
' SQL Server-Abfrage für die Spalteninformationen
Dim query As String = $"SELECT COLUMN_NAME, DATA_TYPE, CHARACTER_MAXIMUM_LENGTH, IS_NULLABLE FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '{tableName}'"
Dim columnDefinitions As New List(Of String)
' Abfrage für die Spaltenstruktur der Remote-Tabelle
Using con As New SqlConnection(sqlServerConnectionString)
con.Open()
Using cmd As New SqlCommand(query, con)
Using reader As SqlDataReader = cmd.ExecuteReader()
While reader.Read()
Dim columnName As String = reader("COLUMN_NAME").ToString()
Dim dataType As String = reader("DATA_TYPE").ToString()
If reader("CHARACTER_MAXIMUM_LENGTH") IsNot DBNull.Value Then
dataType &= $"({reader("CHARACTER_MAXIMUM_LENGTH").ToString()})"
End If
Dim isNullable As String = If(reader("IS_NULLABLE").ToString() = "YES", "NULL", "NOT NULL")
columnDefinitions.Add($"{columnName} {dataType} {isNullable}")
End While
End Using
End Using
End Using
' Die lokale SQL Server-Datenbank, in der die Tabelle erstellt wird
Using localSqlCon As New SqlConnection(localSqlServerConnectionString)
localSqlCon.Open()
' Prüfen, ob die Tabelle bereits existiert
Dim tableExistsQuery As String = $"SELECT 1 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = '{tableName}'"
Using cmd As New SqlCommand(tableExistsQuery, localSqlCon)
Dim exists As Object = cmd.ExecuteScalar()
If exists Is Nothing Then
' Erstelle die Tabelle, wenn sie nicht existiert
Dim createTableSQL As String = $"CREATE TABLE {tableName} ({String.Join(", ", columnDefinitions)});"
Using createCmd As New SqlCommand(createTableSQL, localSqlCon)
createCmd.ExecuteNonQuery()
End Using
Else
' Falls die Tabelle bereits existiert, überprüfe und füge neue Spalten hinzu
For Each columnDef In columnDefinitions
Dim columnName As String = columnDef.Split(" ")(0)
Dim addColumnSQL As String = $"ALTER TABLE {tableName} ADD COLUMN {columnDef};"
Try
Using alterCmd As New SqlCommand(addColumnSQL, localSqlCon)
alterCmd.ExecuteNonQuery()
End Using
Catch ex As Exception
' Falls die Spalte bereits existiert, wird die Exception ignoriert
End Try
Next
End If
End Using
End Using
End Sub
Sub CopyDataIncrementally(sqlServerConnectionString As String, sqliteConnectionString As String, tableName As String)
Dim query As String = $"SELECT * FROM {tableName}"
Using sqlCon As New SqlConnection(sqlServerConnectionString)
sqlCon.Open()
Using cmd As New SqlCommand(query, sqlCon)
Using reader As SqlDataReader = cmd.ExecuteReader()
Using sqliteCon As New SQLiteConnection(sqliteConnectionString)
sqliteCon.Open()
While reader.Read()
Dim columns As New List(Of String)
Dim values As New List(Of String)
Dim parameters As New List(Of SQLiteParameter)
For i As Integer = 0 To reader.FieldCount - 1
Dim columnName As String = reader.GetName(i)
columns.Add(columnName)
values.Add($"@{columnName}")
parameters.Add(New SQLiteParameter($"@{columnName}", reader.GetValue(i)))
Next
Dim insertSQL As String = $"INSERT OR IGNORE INTO {tableName} ({String.Join(", ", columns)}) VALUES ({String.Join(", ", values)})"
Using insertCmd As New SQLiteCommand(insertSQL, sqliteCon)
insertCmd.Parameters.AddRange(parameters.ToArray())
insertCmd.ExecuteNonQuery()
End Using
End While
End Using
End Using
End Using
End Using
End Sub
Function MapSQLServerToSQLiteType(sqlType As String, length As Object) As String
Select Case sqlType.ToLower()
Case "int", "bigint", "smallint", "tinyint"
Return "INTEGER"
Case "bit"
Return "BOOLEAN"
Case "decimal", "numeric", "money", "smallmoney", "float", "real"
Return "REAL"
Case "char", "nchar", "varchar", "nvarchar", "text", "ntext"
Return "TEXT"
Case "datetime", "smalldatetime", "date", "time", "datetime2"
Return "TEXT"
Case Else
Return "TEXT"
End Select
End Function
End Class

View File

@@ -0,0 +1,127 @@
Imports System.Data.SqlClient
Imports System.Data.SQLite
Imports System.IO
Public Class cSQLSync
Dim sqlConnString As String = Class1.DBDoku
Dim sqliteFile As String = "C:\verag\offline_db.sqlite"
Dim sqliteConnString As String = $"Data Source={sqliteFile};Version=3;"
Property TbL As String
Sub Main()
' Falls die lokale Datenbank nicht existiert, erstelle sie
If Not File.Exists(sqliteFile) Then
SQLiteConnection.CreateFile(sqliteFile)
End If
' Daten synchronisieren
'CreateLocalTables()
SyncDatabase()
End Sub
' Erstellt Tabellen in der lokalen SQLite-Datenbank
Sub CreateLocalTables()
Using sqliteConn As New SQLiteConnection(sqliteConnString)
Dim convert As New cSQL2SQLLite
sqliteConn.Open()
Dim sql As String = convert.Main(TbL)
Using cmd As New SQLiteCommand(sql, sqliteConn)
cmd.ExecuteNonQuery()
End Using
End Using
End Sub
' Synchronisiert Daten von SQL Server zu SQLite
Sub SyncDatabase()
Using sqlConn As New SqlConnection(sqlConnString)
sqlConn.Open()
' TbL_Netzwerkclients-Daten abrufen
Dim sqlQuery As String = "SELECT * FROM TbL_Netzwerkclients"
Using sqlCmd As New SqlCommand(sqlQuery, sqlConn)
Using reader As SqlDataReader = sqlCmd.ExecuteReader()
Using sqliteConn As New SQLiteConnection(sqliteConnString)
sqliteConn.Open()
' Einfügen oder Aktualisieren (Upsert)
While reader.Read()
Dim upsertQuery As String = "INSERT INTO TbL_Netzwerkclients (
IPAdresse, FQDN, QINFO, NETNAME, Seriennummer, MAC, Benutzer, Passwort, LINK, INFO, TYPE, HOST, NWSTANDORT, Modell,
Linked, LinkedWith, AddIP, Standort, DHCP, Netzwerk, Firewall, TeamviewerID, TeamviewerKennwort, SSHPort, AnydeskID, AnydeskPassword
) VALUES (
@IP, @FQDN, @QINFO, @NETNAME, @Seriennummer, @MAC, @Benutzer, @Passwort, @LINK, @INFO, @TYPE, @HOST, @NWSTANDORT, @Modell,
@Linked, @LinkedWith, @AddIP, @Standort, @DHCP, @Netzwerk, @Firewall, @TeamviewerID, @TeamviewerKennwort, @SSHPort, @AnydeskID, @AnydeskPassword
)
ON CONFLICT(IPAdresse) DO UPDATE SET
FQDN = excluded.FQDN,
QINFO = excluded.QINFO,
NETNAME = excluded.NETNAME,
Seriennummer = excluded.Seriennummer,
MAC = excluded.MAC,
Benutzer = excluded.Benutzer,
Passwort = excluded.Passwort,
LINK = excluded.LINK,
INFO = excluded.INFO,
TYPE = excluded.TYPE,
HOST = excluded.HOST,
NWSTANDORT = excluded.NWSTANDORT,
Modell = excluded.Modell,
Linked = excluded.Linked,
LinkedWith = excluded.LinkedWith,
AddIP = excluded.AddIP,
Standort = excluded.Standort,
DHCP = excluded.DHCP,
Netzwerk = excluded.Netzwerk,
Firewall = excluded.Firewall,
TeamviewerID = excluded.TeamviewerID,
TeamviewerKennwort = excluded.TeamviewerKennwort,
SSHPort = excluded.SSHPort,
AnydeskID = excluded.AnydeskID,
AnydeskPassword = excluded.AnydeskPassword;"
Using upsertCmd As New SQLiteCommand(upsertQuery, sqliteConn)
upsertCmd.Parameters.AddWithValue("@IP", reader("IPAdresse"))
upsertCmd.Parameters.AddWithValue("@FQDN", reader("FQDN"))
upsertCmd.Parameters.AddWithValue("@QINFO", reader("QINFO"))
upsertCmd.Parameters.AddWithValue("@NETNAME", reader("NETNAME"))
upsertCmd.Parameters.AddWithValue("@Seriennummer", reader("Seriennummer"))
upsertCmd.Parameters.AddWithValue("@MAC", reader("MAC"))
upsertCmd.Parameters.AddWithValue("@Benutzer", reader("Benutzer"))
upsertCmd.Parameters.AddWithValue("@Passwort", reader("Passwort"))
upsertCmd.Parameters.AddWithValue("@LINK", reader("LINK"))
upsertCmd.Parameters.AddWithValue("@INFO", reader("INFO"))
upsertCmd.Parameters.AddWithValue("@TYPE", reader("TYPE"))
upsertCmd.Parameters.AddWithValue("@HOST", reader("HOST"))
upsertCmd.Parameters.AddWithValue("@NWSTANDORT", reader("NWSTANDORT"))
upsertCmd.Parameters.AddWithValue("@Modell", reader("Modell"))
upsertCmd.Parameters.AddWithValue("@Linked", reader("Linked"))
upsertCmd.Parameters.AddWithValue("@LinkedWith", reader("LinkedWith"))
upsertCmd.Parameters.AddWithValue("@AddIP", reader("AddIP"))
upsertCmd.Parameters.AddWithValue("@Standort", reader("Standort"))
upsertCmd.Parameters.AddWithValue("@DHCP", reader("DHCP"))
upsertCmd.Parameters.AddWithValue("@Netzwerk", reader("Netzwerk"))
upsertCmd.Parameters.AddWithValue("@Firewall", reader("Firewall"))
upsertCmd.Parameters.AddWithValue("@TeamviewerID", reader("TeamviewerID"))
upsertCmd.Parameters.AddWithValue("@TeamviewerKennwort", reader("TeamviewerKennwort"))
upsertCmd.Parameters.AddWithValue("@SSHPort", reader("SSHPort"))
upsertCmd.Parameters.AddWithValue("@AnydeskID", reader("AnydeskID"))
upsertCmd.Parameters.AddWithValue("@AnydeskPassword", reader("AnydeskPassword"))
upsertCmd.ExecuteNonQuery()
End Using
End While
End Using
End Using
End Using
End Using
Console.WriteLine("Synchronisation abgeschlossen!")
End Sub
End Class

View File

@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\packages\EntityFramework.6.4.4\build\EntityFramework.props" Condition="Exists('..\packages\EntityFramework.6.4.4\build\EntityFramework.props')" />
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@@ -33,6 +34,8 @@
<UseApplicationTrust>false</UseApplicationTrust>
<PublishWizardCompleted>true</PublishWizardCompleted>
<BootstrapperEnabled>true</BootstrapperEnabled>
<NuGetPackageImportStamp>
</NuGetPackageImportStamp>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>x64</PlatformTarget>
@@ -127,6 +130,12 @@
<Reference Include="Dynamsoft.WPF.Viewer, Version=8.0.0.510, Culture=neutral, PublicKeyToken=298ad97013b423eb, processorArchitecture=MSIL">
<HintPath>..\packages\Dynamsoft.DotNet.TWAIN.8.0.0\lib\net40\Dynamsoft.WPF.Viewer.dll</HintPath>
</Reference>
<Reference Include="EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL">
<HintPath>..\packages\EntityFramework.6.4.4\lib\net45\EntityFramework.dll</HintPath>
</Reference>
<Reference Include="EntityFramework.SqlServer, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL">
<HintPath>..\packages\EntityFramework.6.4.4\lib\net45\EntityFramework.SqlServer.dll</HintPath>
</Reference>
<Reference Include="ExcelNumberFormat, Version=1.0.3.0, Culture=neutral, PublicKeyToken=23c6f5d73be07eca, processorArchitecture=MSIL">
<HintPath>..\packages\ExcelNumberFormat.1.0.3\lib\net20\ExcelNumberFormat.dll</HintPath>
</Reference>
@@ -187,9 +196,19 @@
<HintPath>..\packages\Spire.PDF.6.3.10\lib\net46\Spire.Pdf.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.ComponentModel.DataAnnotations" />
<Reference Include="System.Configuration" />
<Reference Include="System.Data" />
<Reference Include="System.Data.OracleClient" />
<Reference Include="System.Data.SQLite, Version=1.0.119.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
<HintPath>..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.119.0\lib\net46\System.Data.SQLite.dll</HintPath>
</Reference>
<Reference Include="System.Data.SQLite.EF6, Version=1.0.119.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
<HintPath>..\packages\System.Data.SQLite.EF6.1.0.119.0\lib\net46\System.Data.SQLite.EF6.dll</HintPath>
</Reference>
<Reference Include="System.Data.SQLite.Linq, Version=1.0.119.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
<HintPath>..\packages\System.Data.SQLite.Linq.1.0.119.0\lib\net46\System.Data.SQLite.Linq.dll</HintPath>
</Reference>
<Reference Include="System.Deployment" />
<Reference Include="System.Design" />
<Reference Include="System.DirectoryServices" />
@@ -265,8 +284,10 @@
<Compile Include="Classes\cNetzwerk.vb" />
<Compile Include="Classes\cPowershellScripts.vb" />
<Compile Include="Classes\cSMB.vb" />
<Compile Include="Classes\cSQL2SQLLite.vb" />
<Compile Include="Classes\cTSUser.vb" />
<Compile Include="Classes\cPascom.vb" />
<Compile Include="Classes\cSQLSync.vb" />
<Compile Include="DokuDataSet.Designer.vb">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
@@ -701,6 +722,7 @@
<None Include="Resources\Print.png" />
<None Include="Resources\Print20x20.png" />
<None Include="Resources\Update.png" />
<None Include="Resources\sign-sync-icon_34357.ico" />
<Content Include="rj45_ICO.ico" />
</ItemGroup>
<ItemGroup>
@@ -716,4 +738,14 @@
</BootstrapperPackage>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
<PropertyGroup>
<ErrorText>Dieses Projekt verweist auf mindestens ein NuGet-Paket, das auf diesem Computer fehlt. Verwenden Sie die Wiederherstellung von NuGet-Paketen, um die fehlenden Dateien herunterzuladen. Weitere Informationen finden Sie unter "http://go.microsoft.com/fwlink/?LinkID=322105". Die fehlende Datei ist "{0}".</ErrorText>
</PropertyGroup>
<Error Condition="!Exists('..\packages\EntityFramework.6.4.4\build\EntityFramework.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\EntityFramework.6.4.4\build\EntityFramework.props'))" />
<Error Condition="!Exists('..\packages\EntityFramework.6.4.4\build\EntityFramework.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\EntityFramework.6.4.4\build\EntityFramework.targets'))" />
<Error Condition="!Exists('..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.119.0\build\net46\Stub.System.Data.SQLite.Core.NetFramework.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.119.0\build\net46\Stub.System.Data.SQLite.Core.NetFramework.targets'))" />
</Target>
<Import Project="..\packages\EntityFramework.6.4.4\build\EntityFramework.targets" Condition="Exists('..\packages\EntityFramework.6.4.4\build\EntityFramework.targets')" />
<Import Project="..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.119.0\build\net46\Stub.System.Data.SQLite.Core.NetFramework.targets" Condition="Exists('..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.119.0\build\net46\Stub.System.Data.SQLite.Core.NetFramework.targets')" />
</Project>

View File

@@ -7,14 +7,17 @@ Public Class Login
Property BenutzeranmeldeName As String = ""
Private Sub Login_Load(sender As Object, e As EventArgs) Handles MyBase.Load
'Class1.offline = True
Class1.CheckDebug()
Dim LDAP As String = ReturnLDAP(Environment.UserDomainName)
Class1.LoggedOnUser.FillWithLoggedOnUser(True, LDAP)
If Not Class1.offline Then Class1.LoggedOnUser.FillWithLoggedOnUser(Not Class1.offline, LDAP)
Class1.DebugText = LDAP
' Class1.DebugText &= Environment.UserDomainName & vbCrLf
'Class1.DebugText &= ReturnLDAP(Environment.UserDomainName) & vbCrLf
Class1.CheckDebug(True)
Try
userPrincipalName = System.DirectoryServices.AccountManagement.UserPrincipal.Current.UserPrincipalName
If Not Class1.offline Then userPrincipalName = System.DirectoryServices.AccountManagement.UserPrincipal.Current.UserPrincipalName
Catch ex As Exception
MsgBox("Login_Load: " & ex.Message)
End Try
@@ -35,6 +38,7 @@ Public Class Login
End Function
Public Function LoadUSRID()
If Class1.offline Then Exit Function
Dim ds As New DataSet
cSQL.SQL2DS("select * from [ADMIN].dbo.tblMitarbeiter where mit_aliasad_domain = '" & Environment.UserDomainName & "' AND mit_AliasAD_Username = '" & Environment.UserName & "'", ds)
VERAG_PROG_ALLGEMEIN.cAllgemein.USRID = ds.Tables(0).Rows(0).Item("mit_id")
@@ -51,15 +55,20 @@ Public Class Login
Public Sub Login()
Timer1.Enabled = False
Try
Abfrage(userPrincipalName)
' LoadUSRID()
Catch ex As Exception
'MsgBox("Fehler beim Anmelden!")
MsgBox("Loginfehler! Zeile 59" & vbCrLf & ex.Message & vbCrLf & userPrincipalName)
If Class1.offline = False Then
Try
Abfrage(userPrincipalName)
' LoadUSRID()
Catch ex As Exception
'MsgBox("Fehler beim Anmelden!")
MsgBox("Loginfehler! Zeile 59" & vbCrLf & ex.Message & vbCrLf & userPrincipalName)
PasswortabfrageLogin.Show()
End Try
Else
PasswortabfrageLogin.Show()
End Try
End If
End Sub
Public Function Abfrage(user As String, Optional ByVal txt As Boolean = False)

View File

@@ -27,6 +27,7 @@ Partial Class Main
Dim DataGridViewCellStyle1 As System.Windows.Forms.DataGridViewCellStyle = New System.Windows.Forms.DataGridViewCellStyle()
Me.Panel2 = New System.Windows.Forms.Panel()
Me.Panel4 = New System.Windows.Forms.Panel()
Me.lblOfflinemodus = New System.Windows.Forms.Label()
Me.Button3 = New System.Windows.Forms.Button()
Me.Button2 = New System.Windows.Forms.Button()
Me.lblNotruf = New System.Windows.Forms.Label()
@@ -74,6 +75,7 @@ Partial Class Main
Me.PascomToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
Me.UnifiToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
Me.Panel3 = New System.Windows.Forms.Panel()
Me.btnSync = New System.Windows.Forms.Button()
Me.lblCount = New System.Windows.Forms.Label()
Me.btnNeu = New System.Windows.Forms.Button()
Me.ChkDHCPClients = New System.Windows.Forms.CheckBox()
@@ -95,8 +97,13 @@ Partial Class Main
Me.DGVMainContext = New System.Windows.Forms.ContextMenuStrip(Me.components)
Me.DgvMainContextMenuItemHost = New System.Windows.Forms.ToolStripMenuItem()
Me.DateienToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
Me.SMBToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
Me.AnydeskToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
Me.PuttyToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
Me.ToolStripSeparator4 = New System.Windows.Forms.ToolStripSeparator()
Me.DgvMainContextMenuItemLink = New System.Windows.Forms.ToolStripMenuItem()
Me.LinkÖffnenMitEdgeToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
Me.ToolStripSeparator5 = New System.Windows.Forms.ToolStripSeparator()
Me.SMBToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
Me.IPAdresseInZwischenablageToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
Me.TeamviewerVerbindenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
Me.RDPToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
@@ -121,11 +128,6 @@ Partial Class Main
Me.panTSSitzungen = New System.Windows.Forms.Panel()
Me.Timer_Refresh = New System.Windows.Forms.Timer(Me.components)
Me.Timer1 = New System.Windows.Forms.Timer(Me.components)
Me.ToolStripSeparator4 = New System.Windows.Forms.ToolStripSeparator()
Me.ToolStripSeparator5 = New System.Windows.Forms.ToolStripSeparator()
Me.LinkÖffnenMitEdgeToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
Me.AnydeskToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
Me.PuttyToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
Me.Panel2.SuspendLayout()
Me.Panel4.SuspendLayout()
CType(Me.picAVISOMessenger, System.ComponentModel.ISupportInitialize).BeginInit()
@@ -157,6 +159,7 @@ Partial Class Main
'Panel4
'
Me.Panel4.BackColor = System.Drawing.SystemColors.GradientInactiveCaption
Me.Panel4.Controls.Add(Me.lblOfflinemodus)
Me.Panel4.Controls.Add(Me.Button3)
Me.Panel4.Controls.Add(Me.Button2)
Me.Panel4.Controls.Add(Me.lblNotruf)
@@ -184,6 +187,17 @@ Partial Class Main
Me.Panel4.Size = New System.Drawing.Size(1222, 106)
Me.Panel4.TabIndex = 14
'
'lblOfflinemodus
'
Me.lblOfflinemodus.AutoSize = True
Me.lblOfflinemodus.Font = New System.Drawing.Font("Microsoft Sans Serif", 20.25!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblOfflinemodus.ForeColor = System.Drawing.Color.Red
Me.lblOfflinemodus.Location = New System.Drawing.Point(968, 0)
Me.lblOfflinemodus.Name = "lblOfflinemodus"
Me.lblOfflinemodus.Size = New System.Drawing.Size(251, 31)
Me.lblOfflinemodus.TabIndex = 47
Me.lblOfflinemodus.Text = "OFFLINE MODUS"
'
'Button3
'
Me.Button3.BackColor = System.Drawing.SystemColors.ControlLightLight
@@ -408,7 +422,7 @@ Partial Class Main
'
Me.PictureBox1.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.PictureBox1.Image = CType(resources.GetObject("PictureBox1.Image"), System.Drawing.Image)
Me.PictureBox1.Location = New System.Drawing.Point(873, 4)
Me.PictureBox1.Location = New System.Drawing.Point(873, 6)
Me.PictureBox1.Name = "PictureBox1"
Me.PictureBox1.Size = New System.Drawing.Size(340, 74)
Me.PictureBox1.TabIndex = 1
@@ -526,54 +540,54 @@ Partial Class Main
'NetzwerkeToolStripMenuItem
'
Me.NetzwerkeToolStripMenuItem.Name = "NetzwerkeToolStripMenuItem"
Me.NetzwerkeToolStripMenuItem.Size = New System.Drawing.Size(180, 22)
Me.NetzwerkeToolStripMenuItem.Size = New System.Drawing.Size(176, 22)
Me.NetzwerkeToolStripMenuItem.Text = "Tabellen bearbeiten"
'
'AnsichtDruckenToolStripMenuItem
'
Me.AnsichtDruckenToolStripMenuItem.Name = "AnsichtDruckenToolStripMenuItem"
Me.AnsichtDruckenToolStripMenuItem.Size = New System.Drawing.Size(180, 22)
Me.AnsichtDruckenToolStripMenuItem.Size = New System.Drawing.Size(176, 22)
Me.AnsichtDruckenToolStripMenuItem.Text = "Drucken"
'
'ExportToolStripMenuItem
'
Me.ExportToolStripMenuItem.Name = "ExportToolStripMenuItem"
Me.ExportToolStripMenuItem.Size = New System.Drawing.Size(180, 22)
Me.ExportToolStripMenuItem.Size = New System.Drawing.Size(176, 22)
Me.ExportToolStripMenuItem.Text = "Export"
'
'ImportToolStripMenuItem
'
Me.ImportToolStripMenuItem.Name = "ImportToolStripMenuItem"
Me.ImportToolStripMenuItem.Size = New System.Drawing.Size(180, 22)
Me.ImportToolStripMenuItem.Size = New System.Drawing.Size(176, 22)
Me.ImportToolStripMenuItem.Text = "Import"
'
'BenutzerToolStripMenuItem
'
Me.BenutzerToolStripMenuItem.Name = "BenutzerToolStripMenuItem"
Me.BenutzerToolStripMenuItem.Size = New System.Drawing.Size(180, 22)
Me.BenutzerToolStripMenuItem.Size = New System.Drawing.Size(176, 22)
Me.BenutzerToolStripMenuItem.Text = "Benutzer"
'
'AllesSichernCSVToolStripMenuItem
'
Me.AllesSichernCSVToolStripMenuItem.Name = "AllesSichernCSVToolStripMenuItem"
Me.AllesSichernCSVToolStripMenuItem.Size = New System.Drawing.Size(180, 22)
Me.AllesSichernCSVToolStripMenuItem.Size = New System.Drawing.Size(176, 22)
Me.AllesSichernCSVToolStripMenuItem.Text = "Alles Sichern (CSV)"
'
'ToolStripSeparator1
'
Me.ToolStripSeparator1.Name = "ToolStripSeparator1"
Me.ToolStripSeparator1.Size = New System.Drawing.Size(177, 6)
Me.ToolStripSeparator1.Size = New System.Drawing.Size(173, 6)
'
'UpdateToolStripMenuItem
'
Me.UpdateToolStripMenuItem.Name = "UpdateToolStripMenuItem"
Me.UpdateToolStripMenuItem.Size = New System.Drawing.Size(180, 22)
Me.UpdateToolStripMenuItem.Size = New System.Drawing.Size(176, 22)
Me.UpdateToolStripMenuItem.Text = "Update"
'
'ExitToolStripMenuItem
'
Me.ExitToolStripMenuItem.Name = "ExitToolStripMenuItem"
Me.ExitToolStripMenuItem.Size = New System.Drawing.Size(180, 22)
Me.ExitToolStripMenuItem.Size = New System.Drawing.Size(176, 22)
Me.ExitToolStripMenuItem.Text = "Exit"
'
'ToolStripMenuItem2
@@ -610,6 +624,7 @@ Partial Class Main
'Panel3
'
Me.Panel3.BackColor = System.Drawing.SystemColors.GradientInactiveCaption
Me.Panel3.Controls.Add(Me.btnSync)
Me.Panel3.Controls.Add(Me.lblCount)
Me.Panel3.Controls.Add(Me.btnNeu)
Me.Panel3.Controls.Add(Me.ChkDHCPClients)
@@ -628,6 +643,21 @@ Partial Class Main
Me.Panel3.Size = New System.Drawing.Size(200, 765)
Me.Panel3.TabIndex = 2
'
'btnSync
'
Me.btnSync.BackColor = System.Drawing.SystemColors.ControlLightLight
Me.btnSync.FlatAppearance.MouseOverBackColor = System.Drawing.Color.FromArgb(CType(CType(224, Byte), Integer), CType(CType(224, Byte), Integer), CType(CType(224, Byte), Integer))
Me.btnSync.FlatStyle = System.Windows.Forms.FlatStyle.Flat
Me.btnSync.Image = Global.Dokumentation.My.Resources.Resources.sign_sync_icon_34357
Me.btnSync.ImageAlign = System.Drawing.ContentAlignment.MiddleRight
Me.btnSync.Location = New System.Drawing.Point(51, 613)
Me.btnSync.Name = "btnSync"
Me.btnSync.Size = New System.Drawing.Size(73, 43)
Me.btnSync.TabIndex = 19
Me.btnSync.Text = "SYNC"
Me.btnSync.TextAlign = System.Drawing.ContentAlignment.MiddleLeft
Me.btnSync.UseVisualStyleBackColor = False
'
'lblCount
'
Me.lblCount.AutoSize = True
@@ -853,7 +883,7 @@ Partial Class Main
'
Me.DGVMainContext.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.DgvMainContextMenuItemHost, Me.DateienToolStripMenuItem, Me.AnydeskToolStripMenuItem, Me.PuttyToolStripMenuItem, Me.ToolStripSeparator4, Me.DgvMainContextMenuItemLink, Me.LinkÖffnenMitEdgeToolStripMenuItem, Me.ToolStripSeparator5, Me.SMBToolStripMenuItem, Me.IPAdresseInZwischenablageToolStripMenuItem, Me.TeamviewerVerbindenToolStripMenuItem, Me.RDPToolStripMenuItem, Me.RDPFensterToolStripMenuItem, Me.ToolStripSeparator3, Me.ObjektLöschenToolStripMenuItem, Me.ToolStripSeparator2, Me.NetzwerkdateienToolStripMenuItem, Me.ToolsToolStripMenuItem})
Me.DGVMainContext.Name = "ContextMenuStrip2"
Me.DGVMainContext.Size = New System.Drawing.Size(230, 358)
Me.DGVMainContext.Size = New System.Drawing.Size(230, 336)
'
'DgvMainContextMenuItemHost
'
@@ -867,11 +897,22 @@ Partial Class Main
Me.DateienToolStripMenuItem.Size = New System.Drawing.Size(229, 22)
Me.DateienToolStripMenuItem.Text = "Dateien"
'
'SMBToolStripMenuItem
'AnydeskToolStripMenuItem
'
Me.SMBToolStripMenuItem.Name = "SMBToolStripMenuItem"
Me.SMBToolStripMenuItem.Size = New System.Drawing.Size(229, 22)
Me.SMBToolStripMenuItem.Text = "SMB"
Me.AnydeskToolStripMenuItem.Name = "AnydeskToolStripMenuItem"
Me.AnydeskToolStripMenuItem.Size = New System.Drawing.Size(229, 22)
Me.AnydeskToolStripMenuItem.Text = "Anydesk"
'
'PuttyToolStripMenuItem
'
Me.PuttyToolStripMenuItem.Name = "PuttyToolStripMenuItem"
Me.PuttyToolStripMenuItem.Size = New System.Drawing.Size(229, 22)
Me.PuttyToolStripMenuItem.Text = "Putty"
'
'ToolStripSeparator4
'
Me.ToolStripSeparator4.Name = "ToolStripSeparator4"
Me.ToolStripSeparator4.Size = New System.Drawing.Size(226, 6)
'
'DgvMainContextMenuItemLink
'
@@ -879,6 +920,23 @@ Partial Class Main
Me.DgvMainContextMenuItemLink.Size = New System.Drawing.Size(229, 22)
Me.DgvMainContextMenuItemLink.Text = "Link öffnen"
'
'LinkÖffnenMitEdgeToolStripMenuItem
'
Me.LinkÖffnenMitEdgeToolStripMenuItem.Name = "LinkÖffnenMitEdgeToolStripMenuItem"
Me.LinkÖffnenMitEdgeToolStripMenuItem.Size = New System.Drawing.Size(229, 22)
Me.LinkÖffnenMitEdgeToolStripMenuItem.Text = "Link öffnen mit Edge"
'
'ToolStripSeparator5
'
Me.ToolStripSeparator5.Name = "ToolStripSeparator5"
Me.ToolStripSeparator5.Size = New System.Drawing.Size(226, 6)
'
'SMBToolStripMenuItem
'
Me.SMBToolStripMenuItem.Name = "SMBToolStripMenuItem"
Me.SMBToolStripMenuItem.Size = New System.Drawing.Size(229, 22)
Me.SMBToolStripMenuItem.Text = "SMB"
'
'IPAdresseInZwischenablageToolStripMenuItem
'
Me.IPAdresseInZwischenablageToolStripMenuItem.Name = "IPAdresseInZwischenablageToolStripMenuItem"
@@ -935,19 +993,19 @@ Partial Class Main
'PingToolStripMenuItem
'
Me.PingToolStripMenuItem.Name = "PingToolStripMenuItem"
Me.PingToolStripMenuItem.Size = New System.Drawing.Size(180, 22)
Me.PingToolStripMenuItem.Size = New System.Drawing.Size(176, 22)
Me.PingToolStripMenuItem.Text = "Ping"
'
'PingtToolStripMenuItem
'
Me.PingtToolStripMenuItem.Name = "PingtToolStripMenuItem"
Me.PingtToolStripMenuItem.Size = New System.Drawing.Size(180, 22)
Me.PingtToolStripMenuItem.Size = New System.Drawing.Size(176, 22)
Me.PingtToolStripMenuItem.Text = "Ping -t"
'
'SpoolerNeuStartenToolStripMenuItem
'
Me.SpoolerNeuStartenToolStripMenuItem.Name = "SpoolerNeuStartenToolStripMenuItem"
Me.SpoolerNeuStartenToolStripMenuItem.Size = New System.Drawing.Size(180, 22)
Me.SpoolerNeuStartenToolStripMenuItem.Size = New System.Drawing.Size(176, 22)
Me.SpoolerNeuStartenToolStripMenuItem.Text = "Spooler neu starten"
'
'PanTools
@@ -1047,34 +1105,6 @@ Partial Class Main
'Timer1
'
'
'ToolStripSeparator4
'
Me.ToolStripSeparator4.Name = "ToolStripSeparator4"
Me.ToolStripSeparator4.Size = New System.Drawing.Size(226, 6)
'
'ToolStripSeparator5
'
Me.ToolStripSeparator5.Name = "ToolStripSeparator5"
Me.ToolStripSeparator5.Size = New System.Drawing.Size(226, 6)
'
'LinkÖffnenMitEdgeToolStripMenuItem
'
Me.LinkÖffnenMitEdgeToolStripMenuItem.Name = "LinkÖffnenMitEdgeToolStripMenuItem"
Me.LinkÖffnenMitEdgeToolStripMenuItem.Size = New System.Drawing.Size(229, 22)
Me.LinkÖffnenMitEdgeToolStripMenuItem.Text = "Link öffnen mit Edge"
'
'AnydeskToolStripMenuItem
'
Me.AnydeskToolStripMenuItem.Name = "AnydeskToolStripMenuItem"
Me.AnydeskToolStripMenuItem.Size = New System.Drawing.Size(229, 22)
Me.AnydeskToolStripMenuItem.Text = "Anydesk"
'
'PuttyToolStripMenuItem
'
Me.PuttyToolStripMenuItem.Name = "PuttyToolStripMenuItem"
Me.PuttyToolStripMenuItem.Size = New System.Drawing.Size(229, 22)
Me.PuttyToolStripMenuItem.Text = "Putty"
'
'Main
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
@@ -1217,4 +1247,6 @@ Partial Class Main
Friend WithEvents LinkÖffnenMitEdgeToolStripMenuItem As ToolStripMenuItem
Friend WithEvents AnydeskToolStripMenuItem As ToolStripMenuItem
Friend WithEvents PuttyToolStripMenuItem As ToolStripMenuItem
Friend WithEvents lblOfflinemodus As Label
Friend WithEvents btnSync As Button
End Class

View File

@@ -50,6 +50,11 @@ Public Class Main
SetAnsichtLautIni()
Class1.EnableDoubleBuffered(DgVMain)
picAVISOMessenger.Visible = Not Class1.offline
btnBenutzerverwaltung.Enabled = Not Class1.offline
chkTSSitzungen.Checked = Not Class1.offline
lblOfflinemodus.Visible = Class1.offline
Me.KeyPreview = True
If Class1.DebugMode = True Then
@@ -190,6 +195,10 @@ Public Class Main
LstStandort.Items.Add(dr.Item(0))
Class1.Standorte.Add(dr.Item(0))
End Select
If Class1.offline Then
LstStandort.Items.Add(dr.Item(0))
Class1.Standorte.Add(dr.Item(0))
End If
Next
Catch ex As Exception
@@ -651,11 +660,17 @@ Public Class Main
End Function
Private Sub CmdTest_Click(sender As Object, e As EventArgs) Handles CmdTest.Click
Dim sync As New cSQLSync
sync.Main()
End Sub
Private Sub CMdTest2_Click(sender As Object, e As EventArgs) Handles CMdTest2.Click
SMB.Show()
Dim sync As New cSQL
sync.UpdateDatenbankStruktur()
End Sub
Public Sub btnTest3_Click(sender As Object, e As EventArgs) Handles btnTest3.Click
Dim ps = cExtProgramme.RunRemotePSScript("stor10", "veragost\administrator", "+d#XisdBbSt!", "C:\Tools\SMBOpenFiles.ps1", True)
@@ -1241,6 +1256,7 @@ exit"
End Sub
Public Function CheckUpdate(starter As String)
If Class1.offline Then Exit Function
dbload()
Dim pascom As New cPascom
lblNotruf.Text = "Notruf geht an: " & pascom.getredirect("555")
@@ -1432,6 +1448,7 @@ exit"
Exit Sub
End If
Try
If Class1.offline Then Exit Try
If VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_ChatBenutzer And picAVISOMessenger.Visible Then
Dim newMsg = VERAG_PROG_ALLGEMEIN.cMessenger.GET_NewMSG_COUNT()
' MsgBox(newMsg)
@@ -1759,7 +1776,10 @@ exit"
End Sub
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
Me.Cursor = Cursors.WaitCursor
SMB.Show()
Me.Cursor = Cursors.Default
End Sub
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
@@ -1787,6 +1807,19 @@ exit"
cExtProgramme.startputty(host.IPAdresse, host.SSHPort)
End Sub
Private Sub btnSync_Click(sender As Object, e As EventArgs) Handles btnSync.Click
Dim sync As New cSQL
Me.Cursor = Cursors.WaitCursor
Try
sync.UpdateDatenbankStruktur()
Catch ex As Exception
MsgBox("Sync fehlgeschlagen! " & ex.Message)
End Try
Me.Cursor = Cursors.Default
End Sub
Private Sub Main_Closed(sender As Object, e As EventArgs) Handles Me.Closed
Class1.ini.prop_Kompansicht = ChkKompAnsicht.Checked

View File

@@ -298,6 +298,16 @@ Namespace My.Resources
End Get
End Property
'''<summary>
''' Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
'''</summary>
Friend ReadOnly Property sign_sync_icon_34357() As System.Drawing.Bitmap
Get
Dim obj As Object = ResourceManager.GetObject("sign-sync-icon_34357", resourceCulture)
Return CType(obj,System.Drawing.Bitmap)
End Get
End Property
'''<summary>
''' Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
'''</summary>
@@ -309,7 +319,7 @@ Namespace My.Resources
End Property
'''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die 0.0.1.98 ähnelt.
''' Sucht eine lokalisierte Zeichenfolge, die 0.0.2.02 ähnelt.
'''</summary>
Friend ReadOnly Property Version() As String
Get

View File

@@ -124,14 +124,20 @@
<data name="Hakerl20" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Hakerl20.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="msg" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\msg.exe;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<data name="Programmcode" xml:space="preserve">
<value>DOKU</value>
</data>
<data name="del" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\del.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Admin20" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Admin20.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
<data name="pdf512" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\pdf512.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="mail20" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\mail20.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Version" xml:space="preserve">
<value>0.0.2.02</value>
</data>
<data name="Link1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Link.bmp;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@@ -139,35 +145,29 @@
<data name="ico_putty_exe0001" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\ico_putty_exe0001.bmp;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Admin" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Admin.PNG;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Netzwerk20" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Netzwerk20.bmp;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="external-content.duckduckgo.com" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\external-content.duckduckgo.com.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
<data name="iconfinder-contat-us-27phone-4211855_115040 (Benutzerdefiniert)" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\iconfinder-contat-us-27phone-4211855_115040 (Benutzerdefiniert).png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Version" xml:space="preserve">
<value>0.0.1.98</value>
<data name="iconfinder-contat-us-27phone-4211855_115040" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\iconfinder-contat-us-27phone-4211855_115040.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Admin20" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Admin20.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="mstsc1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\mstsc1.bmp;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="aviso_messenger" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\aviso_messenger.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Programmname" xml:space="preserve">
<value>Dokumentation</value>
</data>
<data name="Link" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Link.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="excel20" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\excel20.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="iconfinder-contat-us-27phone-4211855_115040" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\iconfinder-contat-us-27phone-4211855_115040.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
<data name="aviso_messenger" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\aviso_messenger.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Print20x20" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Print20x20.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@@ -181,19 +181,22 @@
<data name="Print" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Print.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="pdf512" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\pdf512.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
<data name="excel20" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\excel20.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="mail20" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\mail20.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
<data name="msg" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\msg.exe;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="Programmcode" xml:space="preserve">
<value>DOKU</value>
<data name="external-content.duckduckgo.com" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\external-content.duckduckgo.com.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Bearbeiten20" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Bearbeiten20.bmp;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="iconfinder-contat-us-27phone-4211855_115040 (Benutzerdefiniert)" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\iconfinder-contat-us-27phone-4211855_115040 (Benutzerdefiniert).png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
<data name="Admin" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Admin.PNG;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="sign-sync-icon_34357" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\sign-sync-icon_34357.ico;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
</root>

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

View File

@@ -2,6 +2,7 @@
Public Class SMB
Property fileserver As String = "pandorasbox.verag.ost.dmn"
Dim ds As New DataSet
Private Sub SMB_Load(sender As Object, e As EventArgs) Handles Me.Load
Class1.EnableDoubleBuffered(dgv)
@@ -12,7 +13,7 @@ Public Class SMB
End Sub
Function LoadSitzungen()
Dim ps = cExtProgramme.RunRemotePSScript("pandorasbox.verag.ost.dmn", "administrator@verag.ost.dmn", "+d#XisdBbSt!", "C:\Tools\SMBOpenFiles.ps1", True)
Dim ps = cExtProgramme.RunRemotePSScript(fileserver, "administrator@verag.ost.dmn", "+d#XisdBbSt!", "C:\Tools\SMBOpenFiles.ps1", True)
cSMB.obj2DS(ps, ds, "SMB")
End Function
@@ -43,7 +44,7 @@ Public Class SMB
Private Sub SitzungBeendenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles SitzungBeendenToolStripMenuItem.Click
Dim datei As String = dgv.CurrentRow.Cells("Datei").Value
Dim ps = cExtProgramme.RunRemotePSScript("stor10", "veragost\administrator", "+d#XisdBbSt!", "Get-SmbOpenFile | Where-Object {$_.ShareRelativePath -like '*" & datei & "*'} | close-SmbOpenFile -Force", False)
Dim ps = cExtProgramme.RunRemotePSScript(fileserver, "veragost\administrator", "+d#XisdBbSt!", "Get-SmbOpenFile | Where-Object {$_.ShareRelativePath -like '*" & datei & "*'} | close-SmbOpenFile -Force", False)
End Sub

View File

@@ -4,6 +4,7 @@
<package id="DhcpServerApi" version="0.3.0.0" targetFramework="net472" />
<package id="DocumentFormat.OpenXml" version="2.7.2" targetFramework="net472" />
<package id="Dynamsoft.DotNet.TWAIN" version="8.0.0" targetFramework="net472" />
<package id="EntityFramework" version="6.4.4" targetFramework="net48" />
<package id="ExcelNumberFormat" version="1.0.3" targetFramework="net472" />
<package id="FastMember" version="1.3.0" targetFramework="net472" />
<package id="Ghostscript.NET" version="1.2.1" targetFramework="net472" />
@@ -13,6 +14,11 @@
<package id="NetSpell" version="2.1.7" targetFramework="net472" />
<package id="Otp.NET" version="1.4.0" targetFramework="net472" />
<package id="Spire.PDF" version="6.3.10" targetFramework="net472" />
<package id="Stub.System.Data.SQLite.Core.NetFramework" version="1.0.119.0" targetFramework="net48" />
<package id="System.Data.SQLite" version="1.0.119.0" targetFramework="net48" />
<package id="System.Data.SQLite.Core" version="1.0.119.0" targetFramework="net48" />
<package id="System.Data.SQLite.EF6" version="1.0.119.0" targetFramework="net48" />
<package id="System.Data.SQLite.Linq" version="1.0.119.0" targetFramework="net48" />
<package id="System.IO.FileSystem.Primitives" version="4.0.1" targetFramework="net472" />
<package id="System.IO.Packaging" version="4.0.0" targetFramework="net472" />
</packages>