diff --git a/DDMonorepo.sln b/DDMonorepo.sln index e05a6c7b..344eb5bc 100644 --- a/DDMonorepo.sln +++ b/DDMonorepo.sln @@ -23,6 +23,8 @@ Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Database", "Modules.Databas EndProject Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Messaging", "Message\Messaging.vbproj", "{AF664D85-0A4B-4BAB-A2F8-83110C06553A}" EndProject +Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "DDTestService", "DDTestService\DDTestService.vbproj", "{63B0EAA3-8BF5-46DA-9040-15E781F4C3B1}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -53,6 +55,10 @@ Global {AF664D85-0A4B-4BAB-A2F8-83110C06553A}.Debug|Any CPU.Build.0 = Debug|Any CPU {AF664D85-0A4B-4BAB-A2F8-83110C06553A}.Release|Any CPU.ActiveCfg = Release|Any CPU {AF664D85-0A4B-4BAB-A2F8-83110C06553A}.Release|Any CPU.Build.0 = Release|Any CPU + {63B0EAA3-8BF5-46DA-9040-15E781F4C3B1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {63B0EAA3-8BF5-46DA-9040-15E781F4C3B1}.Debug|Any CPU.Build.0 = Debug|Any CPU + {63B0EAA3-8BF5-46DA-9040-15E781F4C3B1}.Release|Any CPU.ActiveCfg = Release|Any CPU + {63B0EAA3-8BF5-46DA-9040-15E781F4C3B1}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -64,6 +70,7 @@ Global {93130E7D-A950-4CBD-A0D9-7A6FAF94DDC0} = {8FFE925E-8B84-45F1-93CB-32B1C96F41EB} {EAF0EA75-5FA7-485D-89C7-B2D843B03A96} = {3E2008C8-27B1-41DD-9B1A-0C4029F6AECC} {AF664D85-0A4B-4BAB-A2F8-83110C06553A} = {3E2008C8-27B1-41DD-9B1A-0C4029F6AECC} + {63B0EAA3-8BF5-46DA-9040-15E781F4C3B1} = {7AF3F9C2-C939-4A08-95C1-0453207E298A} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {C1BE4090-A0FD-48AF-86CB-39099D14B286} diff --git a/DDTestService/App.config b/DDTestService/App.config new file mode 100644 index 00000000..731f6de6 --- /dev/null +++ b/DDTestService/App.config @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/DDTestService/DDTestService.vbproj b/DDTestService/DDTestService.vbproj new file mode 100644 index 00000000..a5f86aaa --- /dev/null +++ b/DDTestService/DDTestService.vbproj @@ -0,0 +1,131 @@ + + + + + Debug + AnyCPU + {63B0EAA3-8BF5-46DA-9040-15E781F4C3B1} + WinExe + DDTestService.Service1 + DDTestService + DDTestService + 512 + Console + v4.6.1 + true + + + AnyCPU + true + full + true + true + bin\Debug\ + DDTestService.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 + + + AnyCPU + pdbonly + false + true + true + bin\Release\ + DDTestService.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 + + + On + + + Binary + + + Off + + + On + + + + ..\Modules.Logging\bin\Debug\DigitalData.Modules.Logging.dll + + + + ..\packages\NLog.4.5.8\lib\net45\NLog.dll + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + True + Application.myapp + + + Component + + + MyNewService.vb + + + + True + True + Resources.resx + + + True + Settings.settings + True + + + + + VbMyResourcesResXFileCodeGenerator + Resources.Designer.vb + My.Resources + Designer + + + MyNewService.vb + + + + + MyApplicationCodeGenerator + Application.Designer.vb + + + SettingsSingleFileGenerator + My + Settings.Designer.vb + + + + + + \ No newline at end of file diff --git a/DDTestService/My Project/Application.Designer.vb b/DDTestService/My Project/Application.Designer.vb new file mode 100644 index 00000000..88dd01c7 --- /dev/null +++ b/DDTestService/My Project/Application.Designer.vb @@ -0,0 +1,13 @@ +'------------------------------------------------------------------------------ +' +' This code was generated by a tool. +' Runtime Version:4.0.30319.42000 +' +' Changes to this file may cause incorrect behavior and will be lost if +' the code is regenerated. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + diff --git a/DDTestService/My Project/Application.myapp b/DDTestService/My Project/Application.myapp new file mode 100644 index 00000000..602de37e --- /dev/null +++ b/DDTestService/My Project/Application.myapp @@ -0,0 +1,10 @@ + + + false + false + 0 + true + 0 + 3 + true + diff --git a/DDTestService/My Project/AssemblyInfo.vb b/DDTestService/My Project/AssemblyInfo.vb new file mode 100644 index 00000000..4df2c474 --- /dev/null +++ b/DDTestService/My Project/AssemblyInfo.vb @@ -0,0 +1,35 @@ +Imports System +Imports System.Reflection +Imports System.Runtime.InteropServices + +' Allgemeine Informationen über eine Assembly werden über die folgenden +' Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern, +' die einer Assembly zugeordnet sind. + +' Werte der Assemblyattribute überprüfen + + + + + + + + + + +'Die folgende GUID bestimmt die ID der Typbibliothek, wenn dieses Projekt für COM verfügbar gemacht wird. + + +' Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten: +' +' Hauptversion +' Nebenversion +' Buildnummer +' Revision +' +' Sie können alle Werte angeben oder Standardwerte für die Build- und Revisionsnummern verwenden, +' übernehmen, indem Sie "*" eingeben: +' + + + diff --git a/DDTestService/My Project/Resources.Designer.vb b/DDTestService/My Project/Resources.Designer.vb new file mode 100644 index 00000000..661e32fb --- /dev/null +++ b/DDTestService/My Project/Resources.Designer.vb @@ -0,0 +1,62 @@ +'------------------------------------------------------------------------------ +' +' This code was generated by a tool. +' Runtime Version:4.0.30319.42000 +' +' Changes to this file may cause incorrect behavior and will be lost if +' the code is regenerated. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + + +Namespace My.Resources + + 'This class was auto-generated by the StronglyTypedResourceBuilder + 'class via a tool like ResGen or Visual Studio. + 'To add or remove a member, edit your .ResX file then rerun ResGen + 'with the /str option, or rebuild your VS project. + ''' + ''' A strongly-typed resource class, for looking up localized strings, etc. + ''' + _ + Friend Module Resources + + Private resourceMan As Global.System.Resources.ResourceManager + + Private resourceCulture As Global.System.Globalization.CultureInfo + + ''' + ''' Returns the cached ResourceManager instance used by this class. + ''' + _ + Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager + Get + If Object.ReferenceEquals(resourceMan, Nothing) Then + Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("DDTestService.Resources", GetType(Resources).Assembly) + resourceMan = temp + End If + Return resourceMan + End Get + End Property + + ''' + ''' Overrides the current thread's CurrentUICulture property for all + ''' resource lookups using this strongly typed resource class. + ''' + _ + Friend Property Culture() As Global.System.Globalization.CultureInfo + Get + Return resourceCulture + End Get + Set(ByVal value As Global.System.Globalization.CultureInfo) + resourceCulture = value + End Set + End Property + End Module +End Namespace diff --git a/DDTestService/My Project/Resources.resx b/DDTestService/My Project/Resources.resx new file mode 100644 index 00000000..af7dbebb --- /dev/null +++ b/DDTestService/My Project/Resources.resx @@ -0,0 +1,117 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/DDTestService/My Project/Settings.Designer.vb b/DDTestService/My Project/Settings.Designer.vb new file mode 100644 index 00000000..eea8050b --- /dev/null +++ b/DDTestService/My Project/Settings.Designer.vb @@ -0,0 +1,73 @@ +'------------------------------------------------------------------------------ +' +' This code was generated by a tool. +' Runtime Version:4.0.30319.42000 +' +' Changes to this file may cause incorrect behavior and will be lost if +' the code is regenerated. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + + +Namespace My + + _ + Partial Friend NotInheritable Class MySettings + Inherits Global.System.Configuration.ApplicationSettingsBase + + Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings), MySettings) + +#Region "My.Settings Auto-Save Functionality" +#If _MyType = "WindowsForms" Then + Private Shared addedHandler As Boolean + + Private Shared addedHandlerLockObject As New Object + + _ + Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs) + If My.Application.SaveMySettingsOnExit Then + My.Settings.Save() + End If + End Sub +#End If +#End Region + + Public Shared ReadOnly Property [Default]() As MySettings + Get + +#If _MyType = "WindowsForms" Then + If Not addedHandler Then + SyncLock addedHandlerLockObject + If Not addedHandler Then + AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings + addedHandler = True + End If + End SyncLock + End If +#End If + Return defaultInstance + End Get + End Property + End Class +End Namespace + +Namespace My + + _ + Friend Module MySettingsProperty + + _ + Friend ReadOnly Property Settings() As Global.DDTestService.My.MySettings + Get + Return Global.DDTestService.My.MySettings.Default + End Get + End Property + End Module +End Namespace diff --git a/DDTestService/My Project/Settings.settings b/DDTestService/My Project/Settings.settings new file mode 100644 index 00000000..85b890b3 --- /dev/null +++ b/DDTestService/My Project/Settings.settings @@ -0,0 +1,7 @@ + + + + + + + diff --git a/DDTestService/MyNewService.Designer.vb b/DDTestService/MyNewService.Designer.vb new file mode 100644 index 00000000..408fb7a2 --- /dev/null +++ b/DDTestService/MyNewService.Designer.vb @@ -0,0 +1,52 @@ +Imports System.ServiceProcess + + +Partial Class MyNewService + Inherits System.ServiceProcess.ServiceBase + + 'UserService überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + ' Der Haupteinstiegspunkt für den Prozess + + + Shared Sub Main() + Dim ServicesToRun() As System.ServiceProcess.ServiceBase + + ' Innerhalb eines Prozesses können mehrere NT-Dienste ausgeführt werden. Um einen + ' weiteren Dienst zu diesem Prozess hinzuzufügen, ändern Sie die folgende Zeile, + ' um ein zweites Dienstobjekt zu erstellen. Zum Beispiel + ' + ' ServicesToRun = New System.ServiceProcess.ServiceBase () {New MyNewService, New MySecondUserService} + ' + ServicesToRun = New System.ServiceProcess.ServiceBase() {New MyNewService} + + System.ServiceProcess.ServiceBase.Run(ServicesToRun) + End Sub + + 'Wird vom Komponenten-Designer benötigt. + Private components As System.ComponentModel.IContainer + + ' Hinweis: Die folgende Prozedur ist für den Komponenten-Designer erforderlich. + ' Das Bearbeiten ist mit dem Komponenten-Designer möglich. + ' Das Bearbeiten mit dem Code-Editor ist nicht möglich. + + Private Sub InitializeComponent() + ' + 'MyNewService + ' + Me.CanShutdown = True + Me.ServiceName = "MyNewService" + + End Sub + +End Class diff --git a/DDTestService/MyNewService.resx b/DDTestService/MyNewService.resx new file mode 100644 index 00000000..e5858cc2 --- /dev/null +++ b/DDTestService/MyNewService.resx @@ -0,0 +1,123 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + False + + \ No newline at end of file diff --git a/DDTestService/MyNewService.vb b/DDTestService/MyNewService.vb new file mode 100644 index 00000000..3520bb85 --- /dev/null +++ b/DDTestService/MyNewService.vb @@ -0,0 +1,21 @@ +Imports System.ComponentModel +Imports DigitalData.Modules.Logging +Imports NLog +Public Class MyNewService + Private Shared _MyLoggerConfig As LogConfig + Public Shared threadRunner As BackgroundWorker + Private Shared Logger As Logger = LogManager.GetCurrentClassLogger + Protected Overrides Sub OnStart(ByVal args() As String) + ' Code zum Starten des Dienstes hier einfügen. Diese Methode sollte Vorgänge + ' ausführen, damit der Dienst gestartet werden kann. + _MyLoggerConfig = New LogConfig(LogConfig.PathType.CurrentDirectory) + ' clsLogger.Init(My.Application.Info.DirectoryPath & "\Log", "_SERVICEResultHandler") + Logger.Info("Service started") + End Sub + + Protected Overrides Sub OnStop() + ' Hier Code zum Ausführen erforderlicher Löschvorgänge zum Beenden des Dienstes einfügen. + Logger.Info("Service stopped") + End Sub + +End Class diff --git a/DDTestService/packages.config b/DDTestService/packages.config new file mode 100644 index 00000000..a3ffb2eb --- /dev/null +++ b/DDTestService/packages.config @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/EDMDesigner/FrmMain.vb b/EDMDesigner/FrmMain.vb index 461b6c1f..7d42e7cb 100644 --- a/EDMDesigner/FrmMain.vb +++ b/EDMDesigner/FrmMain.vb @@ -4,7 +4,7 @@ Imports DigitalData.Modules.Logging Public Class FrmMain Private SelectedTable As Integer Private Logger As NLog.Logger - Private LogWrapper As Logger + Private LogWrapper As LogConfig Private DBFirebird As Firebird Private Sub CreateTableNodesFromDatatable(dt As DataTable) @@ -65,7 +65,7 @@ Public Class FrmMain Private Sub FrmMain_Load(sender As Object, e As EventArgs) Handles Me.Load - LogWrapper = New Logger(ClassLogger.PathType.CurrentDirectory) + LogWrapper = New LogConfig(ClassLogger.PathType.CurrentDirectory) Logger = NLog.LogManager.GetCurrentClassLogger() diff --git a/Modules.Database/MSSQLServer.vb b/Modules.Database/MSSQLServer.vb index 9b86a6e3..45437826 100644 --- a/Modules.Database/MSSQLServer.vb +++ b/Modules.Database/MSSQLServer.vb @@ -24,6 +24,7 @@ Public Class MSSQLServer Return False End Try End Function + Private Function GetSQLConnection() Try If IsNothing(CurrentSQLConnection) Then diff --git a/Modules.Logging/Logger.vb b/Modules.Logging/LogConfig.vb similarity index 99% rename from Modules.Logging/Logger.vb rename to Modules.Logging/LogConfig.vb index b901dbd0..607dd16b 100644 --- a/Modules.Logging/Logger.vb +++ b/Modules.Logging/LogConfig.vb @@ -25,7 +25,7 @@ Imports NLog.Targets ''' LogPath, String (readonly) ''' Debug, Boolean ''' -Public Class Logger +Public Class LogConfig Private Const KEEP_FILES_OPEN As Boolean = False Private Const MAX_ARCHIVE_FILES_DEFAULT As Integer = 30 Private Const MAX_ARCHIVE_FILES_DEBUG_DETAIL As Integer = 1 diff --git a/Modules.Logging/Logging.vbproj b/Modules.Logging/Logging.vbproj index 4b888003..8d3112c4 100644 --- a/Modules.Logging/Logging.vbproj +++ b/Modules.Logging/Logging.vbproj @@ -72,7 +72,7 @@ - + True diff --git a/TestGUI/Form1.vb b/TestGUI/Form1.vb index d5d622ac..c85e3ef4 100644 --- a/TestGUI/Form1.vb +++ b/TestGUI/Form1.vb @@ -2,7 +2,7 @@ Imports DigitalData.Modules.Logging Public Class Form1 - Dim MyLogger As Logger + Dim MyLogger As LogConfig Protected _windream As Windream Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click _windream = New Windream("W", True) @@ -17,7 +17,7 @@ Public Class Form1 End Sub Private Sub Form1_Load(sender As Object, e As EventArgs) Handles Me.Load - MyLogger = New Logger(Logger.PathType.CurrentDirectory) + MyLogger = New LogConfig(LogConfig.PathType.CurrentDirectory) End Sub Private Sub Button2_Click(sender As Object, e As EventArgs) Handles GetValue.Click