From e6914c6596db083e116b64a25fc621cecb8466f9 Mon Sep 17 00:00:00 2001 From: Jonathan Jenne Date: Fri, 1 Feb 2019 16:30:31 +0100 Subject: [PATCH] jj --- DDLicenseService/DDEDMLicenseService.vbproj | 144 ++++++ DDLicenseService/ILicenseService.vb | 10 + DDLicenseService/LicenseService.vb | 14 + .../My Project/Application.Designer.vb | 13 + DDLicenseService/My Project/Application.myapp | 10 + DDLicenseService/My Project/AssemblyInfo.vb | 35 ++ .../My Project/Resources.Designer.vb | 63 +++ DDLicenseService/My Project/Resources.resx | 117 +++++ .../My Project/Settings.Designer.vb | 73 +++ DDLicenseService/My Project/Settings.settings | 7 + DDLicenseService/ProjectInstaller.vb | 24 + .../Session.vb | 0 DDLicenseService/SettingsModule.vb | 4 + DDLicenseService/WindowsService.vb | 72 +++ DDLicenseService/app.config | 28 ++ DDLicenseService/packages.config | 4 + DDMonorepo.sln | 7 + EDMI_ClientSuite/EDMI_ClientSuite.vbproj | 5 +- EDMI_ClientSuite/License/LicenseSchema.vb | 201 ++++++++ EDMI_ClientSuite/MyApplication.vb | 1 - EDMI_ClientSuite/State/LicenseState.vb | 25 - .../ControlProperties.Designer.vb | 463 ------------------ .../ControlProperties.en.Designer.vb | 0 .../_Skpokpotrings/ControlProperties.en.resx | 252 ---------- .../_Skpokpotrings/ControlProperties.resx | 252 ---------- EDMI_ClientSuite/frmMain.Designer.vb | 13 +- EDMI_ClientSuite/frmMain.resx | 38 +- EDMI_ClientSuite/frmMain.vb | 40 ++ SERVICES/DDEDM_NetworkService/App.config | 38 +- .../DDEDM_NetworkService/DDEDMService.vbproj | 40 +- SERVICES/DDEDM_NetworkService/EDMService.vb | 12 - ...EDMWindowsService.vb => WindowsService.vb} | 4 +- SERVICES/DDEDM_NetworkService/packages.config | 5 + 33 files changed, 947 insertions(+), 1067 deletions(-) create mode 100644 DDLicenseService/DDEDMLicenseService.vbproj create mode 100644 DDLicenseService/ILicenseService.vb create mode 100644 DDLicenseService/LicenseService.vb create mode 100644 DDLicenseService/My Project/Application.Designer.vb create mode 100644 DDLicenseService/My Project/Application.myapp create mode 100644 DDLicenseService/My Project/AssemblyInfo.vb create mode 100644 DDLicenseService/My Project/Resources.Designer.vb create mode 100644 DDLicenseService/My Project/Resources.resx create mode 100644 DDLicenseService/My Project/Settings.Designer.vb create mode 100644 DDLicenseService/My Project/Settings.settings create mode 100644 DDLicenseService/ProjectInstaller.vb rename {SERVICES/DDEDM_NetworkService => DDLicenseService}/Session.vb (100%) create mode 100644 DDLicenseService/SettingsModule.vb create mode 100644 DDLicenseService/WindowsService.vb create mode 100644 DDLicenseService/app.config create mode 100644 DDLicenseService/packages.config create mode 100644 EDMI_ClientSuite/License/LicenseSchema.vb delete mode 100644 EDMI_ClientSuite/State/LicenseState.vb delete mode 100644 EDMI_ClientSuite/_Skpokpotrings/ControlProperties.Designer.vb delete mode 100644 EDMI_ClientSuite/_Skpokpotrings/ControlProperties.en.Designer.vb delete mode 100644 EDMI_ClientSuite/_Skpokpotrings/ControlProperties.en.resx delete mode 100644 EDMI_ClientSuite/_Skpokpotrings/ControlProperties.resx rename SERVICES/DDEDM_NetworkService/{EDMWindowsService.vb => WindowsService.vb} (97%) create mode 100644 SERVICES/DDEDM_NetworkService/packages.config diff --git a/DDLicenseService/DDEDMLicenseService.vbproj b/DDLicenseService/DDEDMLicenseService.vbproj new file mode 100644 index 00000000..2bd7fe17 --- /dev/null +++ b/DDLicenseService/DDEDMLicenseService.vbproj @@ -0,0 +1,144 @@ + + + + + Debug + AnyCPU + {CBE9322E-67A1-4CC5-B25F-4A1B4C9FC55C} + WinExe + DDLicenseService + DDEDMLicenseService + 512 + Console + v4.6.1 + True + + + true + full + true + true + bin\Debug\ + DDEDMLicenseService.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 + + + pdbonly + false + true + true + bin\Release\ + DDEDMLicenseService.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 + + + On + + + Binary + + + Off + + + On + + + DDLicenseService.EDMWindowsService + + + + + ..\packages\NLog.4.5.11\lib\net45\NLog.dll + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Component + + + + True + Application.myapp + + + True + True + Resources.resx + + + True + Settings.settings + True + + + + + Component + + + + + VbMyResourcesResXFileCodeGenerator + Resources.Designer.vb + My.Resources + Designer + + + + + + MyApplicationCodeGenerator + Application.Designer.vb + + + SettingsSingleFileGenerator + My + Settings.Designer.vb + + + + + + {991d0231-4623-496d-8bd0-9ca906029cbc} + Filesystem + + + {eaf0ea75-5fa7-485d-89c7-b2d843b03a96} + Database + + + {903b2d7d-3b80-4be9-8713-7447b704e1b0} + Logging + + + + \ No newline at end of file diff --git a/DDLicenseService/ILicenseService.vb b/DDLicenseService/ILicenseService.vb new file mode 100644 index 00000000..f11f08e3 --- /dev/null +++ b/DDLicenseService/ILicenseService.vb @@ -0,0 +1,10 @@ +Imports System.ServiceModel + +' HINWEIS: Mit dem Befehl "Umbenennen" im Kontextmenü können Sie den Schnittstellennamen "ILicenseService" sowohl im Code als auch in der Konfigurationsdatei ändern. + +Public Interface ILicenseService + + + Sub DoWork() + +End Interface diff --git a/DDLicenseService/LicenseService.vb b/DDLicenseService/LicenseService.vb new file mode 100644 index 00000000..1afd3a26 --- /dev/null +++ b/DDLicenseService/LicenseService.vb @@ -0,0 +1,14 @@ +Imports DigitalData.Modules.Logging + +Public Class LicenseService + Implements ILicenseService + + Public Shared Event ClientConnectedEvent As EventHandler(Of Session) + Public Shared Event ClientDisconnectedEvent As EventHandler(Of Session) + + Public Shared LogConfig As LogConfig + + Public Sub DoWork() Implements ILicenseService.DoWork + End Sub + +End Class diff --git a/DDLicenseService/My Project/Application.Designer.vb b/DDLicenseService/My Project/Application.Designer.vb new file mode 100644 index 00000000..8ab460ba --- /dev/null +++ b/DDLicenseService/My Project/Application.Designer.vb @@ -0,0 +1,13 @@ +'------------------------------------------------------------------------------ +' +' Dieser Code wurde von einem Tool generiert. +' Laufzeitversion:4.0.30319.42000 +' +' Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn +' der Code erneut generiert wird. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + diff --git a/DDLicenseService/My Project/Application.myapp b/DDLicenseService/My Project/Application.myapp new file mode 100644 index 00000000..758895de --- /dev/null +++ b/DDLicenseService/My Project/Application.myapp @@ -0,0 +1,10 @@ + + + false + false + 0 + true + 0 + 1 + true + diff --git a/DDLicenseService/My Project/AssemblyInfo.vb b/DDLicenseService/My Project/AssemblyInfo.vb new file mode 100644 index 00000000..b3f69a0c --- /dev/null +++ b/DDLicenseService/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/DDLicenseService/My Project/Resources.Designer.vb b/DDLicenseService/My Project/Resources.Designer.vb new file mode 100644 index 00000000..82280de9 --- /dev/null +++ b/DDLicenseService/My Project/Resources.Designer.vb @@ -0,0 +1,63 @@ +'------------------------------------------------------------------------------ +' +' Dieser Code wurde von einem Tool generiert. +' Laufzeitversion:4.0.30319.42000 +' +' Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn +' der Code erneut generiert wird. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + +Imports System + +Namespace My.Resources + + 'Diese Klasse wurde von der StronglyTypedResourceBuilder automatisch generiert + '-Klasse über ein Tool wie ResGen oder Visual Studio automatisch generiert. + 'Um einen Member hinzuzufügen oder zu entfernen, bearbeiten Sie die .ResX-Datei und führen dann ResGen + 'mit der /str-Option erneut aus, oder Sie erstellen Ihr VS-Projekt neu. + ''' + ''' Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. + ''' + _ + Friend Module Resources + + Private resourceMan As Global.System.Resources.ResourceManager + + Private resourceCulture As Global.System.Globalization.CultureInfo + + ''' + ''' Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. + ''' + _ + 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("DDLicenseService.Resources", GetType(Resources).Assembly) + resourceMan = temp + End If + Return resourceMan + End Get + End Property + + ''' + ''' Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle + ''' Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden. + ''' + _ + Friend Property Culture() As Global.System.Globalization.CultureInfo + Get + Return resourceCulture + End Get + Set + resourceCulture = value + End Set + End Property + End Module +End Namespace diff --git a/DDLicenseService/My Project/Resources.resx b/DDLicenseService/My Project/Resources.resx new file mode 100644 index 00000000..af7dbebb --- /dev/null +++ b/DDLicenseService/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/DDLicenseService/My Project/Settings.Designer.vb b/DDLicenseService/My Project/Settings.Designer.vb new file mode 100644 index 00000000..2bbfdbc1 --- /dev/null +++ b/DDLicenseService/My Project/Settings.Designer.vb @@ -0,0 +1,73 @@ +'------------------------------------------------------------------------------ +' +' Dieser Code wurde von einem Tool generiert. +' Laufzeitversion:4.0.30319.42000 +' +' Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn +' der Code erneut generiert wird. +' +'------------------------------------------------------------------------------ + +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 "Automatische My.Settings-Speicherfunktion" +#If _MyType = "WindowsForms" Then + Private Shared addedHandler As Boolean + + Private Shared addedHandlerLockObject As New Object + + _ + Private Shared Sub AutoSaveSettings(sender As Global.System.Object, 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.DDLicenseService.My.MySettings + Get + Return Global.DDLicenseService.My.MySettings.Default + End Get + End Property + End Module +End Namespace diff --git a/DDLicenseService/My Project/Settings.settings b/DDLicenseService/My Project/Settings.settings new file mode 100644 index 00000000..85b890b3 --- /dev/null +++ b/DDLicenseService/My Project/Settings.settings @@ -0,0 +1,7 @@ + + + + + + + diff --git a/DDLicenseService/ProjectInstaller.vb b/DDLicenseService/ProjectInstaller.vb new file mode 100644 index 00000000..0576459b --- /dev/null +++ b/DDLicenseService/ProjectInstaller.vb @@ -0,0 +1,24 @@ +Imports System.ComponentModel +Imports System.Configuration.Install +Imports System.ServiceProcess + + +Public Class ProjectInstaller + Inherits Installer + + Private ReadOnly process As ServiceProcessInstaller + Private ReadOnly components As IContainer + Private ReadOnly service As ServiceInstaller + + Public Sub New() + process = New ServiceProcessInstaller With { + .Account = ServiceAccount.NetworkService + } + service = New ServiceInstaller With { + .ServiceName = SERVICE_NAME, + .DisplayName = SERVICE_DISPLAY_NAME + } + Installers.Add(process) + Installers.Add(service) + End Sub +End Class diff --git a/SERVICES/DDEDM_NetworkService/Session.vb b/DDLicenseService/Session.vb similarity index 100% rename from SERVICES/DDEDM_NetworkService/Session.vb rename to DDLicenseService/Session.vb diff --git a/DDLicenseService/SettingsModule.vb b/DDLicenseService/SettingsModule.vb new file mode 100644 index 00000000..88b69220 --- /dev/null +++ b/DDLicenseService/SettingsModule.vb @@ -0,0 +1,4 @@ +Module SettingsModule + Public Const SERVICE_NAME As String = "DDEDMLicenseSvc" + Public Const SERVICE_DISPLAY_NAME As String = "Digital Data EDM License Service" +End Module \ No newline at end of file diff --git a/DDLicenseService/WindowsService.vb b/DDLicenseService/WindowsService.vb new file mode 100644 index 00000000..f3ac05f7 --- /dev/null +++ b/DDLicenseService/WindowsService.vb @@ -0,0 +1,72 @@ +Imports System.ServiceModel +Imports System.ServiceProcess +Imports System.Configuration +Imports DigitalData.Modules.Logging +Imports DigitalData.Modules.Database +Imports DigitalData.Modules.Database.Exceptions + +Public Class WindowsService + Inherits ServiceBase + + Private _serviceHost As ServiceHost = Nothing + + Private _logConfig As LogConfig + Private _logger As Logger + Private _db As Firebird + Private _clientsConnected As Integer = 0 + Private _clients As New List(Of Session) + + Public Sub New() + ServiceName = SERVICE_NAME + End Sub + + Public Shared Sub Main() + Run(New WindowsService()) + End Sub + + Protected Overrides Sub OnStart(ByVal args As String()) + Try + _logConfig = New LogConfig(LogConfig.PathType.CustomPath, "E:\EDMService") + _logger = _logConfig.GetLogger() + + _logger.Info("Service {0} is starting", SERVICE_DISPLAY_NAME) + + AddHandler LicenseService.ClientConnectedEvent, AddressOf EDMService_ClientConnected + AddHandler LicenseService.ClientDisconnectedEvent, AddressOf EDMService_ClientDisonnected + + LicenseService.LogConfig = _logConfig + + _logger.Info("Starting the WCF Service") + + _serviceHost = New ServiceHost(GetType(LicenseService)) + _serviceHost.Open() + + _logger.Info("Successfully started the WCF Service!") + + _logger.Info("Service {0} successfully started!", SERVICE_DISPLAY_NAME) + Catch ex As Exception + _logger.Error(ex, "Failed to start the service host!") + End Try + End Sub + + Private Sub EDMService_ClientDisonnected(sender As Object, e As Session) + _clientsConnected -= 1 + _clients.Remove(e) + _logger.Info("Client {0}/{1} disconnected! Total {2}", e.Username, e.SessionId, _clientsConnected) + End Sub + + Private Sub EDMService_ClientConnected(sender As Object, e As Session) + _clientsConnected += 1 + _clients.Add(e) + _logger.Info("Client {0}/{1} connected! Total {2}", e.Username, e.SessionId, _clientsConnected) + End Sub + + Protected Overrides Sub OnStop() + If _serviceHost IsNot Nothing Then + _serviceHost.Close() + _serviceHost = Nothing + End If + _logger.Info("Service {0} is stopping!", SERVICE_DISPLAY_NAME) + End Sub +End Class + diff --git a/DDLicenseService/app.config b/DDLicenseService/app.config new file mode 100644 index 00000000..fffa925f --- /dev/null +++ b/DDLicenseService/app.config @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/DDLicenseService/packages.config b/DDLicenseService/packages.config new file mode 100644 index 00000000..f89fa324 --- /dev/null +++ b/DDLicenseService/packages.config @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/DDMonorepo.sln b/DDMonorepo.sln index 8362091a..1dd85fdb 100644 --- a/DDMonorepo.sln +++ b/DDMonorepo.sln @@ -65,6 +65,8 @@ Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "EDMIFileOps", "EDMI_FILE_OP EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ClientSuiteTest", "DXApplication1\ClientSuiteTest\ClientSuiteTest.csproj", "{221FDADA-D849-4036-A7CE-D1FC1D67E1FA}" EndProject +Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "DDEDMLicenseService", "DDLicenseService\DDEDMLicenseService.vbproj", "{CBE9322E-67A1-4CC5-B25F-4A1B4C9FC55C}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -159,6 +161,10 @@ Global {221FDADA-D849-4036-A7CE-D1FC1D67E1FA}.Debug|Any CPU.Build.0 = Debug|Any CPU {221FDADA-D849-4036-A7CE-D1FC1D67E1FA}.Release|Any CPU.ActiveCfg = Release|Any CPU {221FDADA-D849-4036-A7CE-D1FC1D67E1FA}.Release|Any CPU.Build.0 = Release|Any CPU + {CBE9322E-67A1-4CC5-B25F-4A1B4C9FC55C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {CBE9322E-67A1-4CC5-B25F-4A1B4C9FC55C}.Debug|Any CPU.Build.0 = Debug|Any CPU + {CBE9322E-67A1-4CC5-B25F-4A1B4C9FC55C}.Release|Any CPU.ActiveCfg = Release|Any CPU + {CBE9322E-67A1-4CC5-B25F-4A1B4C9FC55C}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -186,6 +192,7 @@ Global {A8C3F298-76AB-4359-AB3C-986E313B4336} = {7AF3F9C2-C939-4A08-95C1-0453207E298A} {5B1171DC-FFFE-4813-A20D-786AAE47B320} = {3E2008C8-27B1-41DD-9B1A-0C4029F6AECC} {221FDADA-D849-4036-A7CE-D1FC1D67E1FA} = {8FFE925E-8B84-45F1-93CB-32B1C96F41EB} + {CBE9322E-67A1-4CC5-B25F-4A1B4C9FC55C} = {7AF3F9C2-C939-4A08-95C1-0453207E298A} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {C1BE4090-A0FD-48AF-86CB-39099D14B286} diff --git a/EDMI_ClientSuite/EDMI_ClientSuite.vbproj b/EDMI_ClientSuite/EDMI_ClientSuite.vbproj index a8ec9152..8da0a440 100644 --- a/EDMI_ClientSuite/EDMI_ClientSuite.vbproj +++ b/EDMI_ClientSuite/EDMI_ClientSuite.vbproj @@ -248,6 +248,9 @@ Form + + LicenseSchema.xsd + True @@ -264,8 +267,6 @@ True - - True diff --git a/EDMI_ClientSuite/License/LicenseSchema.vb b/EDMI_ClientSuite/License/LicenseSchema.vb new file mode 100644 index 00000000..9c0e1b20 --- /dev/null +++ b/EDMI_ClientSuite/License/LicenseSchema.vb @@ -0,0 +1,201 @@ +'------------------------------------------------------------------------------ +' +' Dieser Code wurde von einem Tool generiert. +' Laufzeitversion:4.0.30319.42000 +' +' Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn +' der Code erneut generiert wird. +' +'------------------------------------------------------------------------------ + +Option Strict Off +Option Explicit On + +Imports System.Xml.Serialization + +' +'This source code was auto-generated by xsd, Version=4.6.1586.0. +' + +''' + _ +Partial Public Class License + + Private modulesField() As LicenseModule + + ''' + _ + Public Property Modules() As LicenseModule() + Get + Return Me.modulesField + End Get + Set + Me.modulesField = value + End Set + End Property +End Class + +''' + _ +Partial Public Class LicenseModule + + Private usersField() As LicenseModuleUser + + Private nameField As String + + Private validUntilField As Date + + Private validUntilFieldSpecified As Boolean + + ''' + _ + Public Property Users() As LicenseModuleUser() + Get + Return Me.usersField + End Get + Set + Me.usersField = value + End Set + End Property + + ''' + _ + Public Property Name() As String + Get + Return Me.nameField + End Get + Set + Me.nameField = value + End Set + End Property + + ''' + _ + Public Property ValidUntil() As Date + Get + Return Me.validUntilField + End Get + Set + Me.validUntilField = value + End Set + End Property + + ''' + _ + Public Property ValidUntilSpecified() As Boolean + Get + Return Me.validUntilFieldSpecified + End Get + Set + Me.validUntilFieldSpecified = value + End Set + End Property +End Class + +''' + _ +Partial Public Class LicenseModuleUser + + Private typeField As UserType + + Private countField As String + + Private testField As Boolean + + Private validUntilField As Date + + Private validUntilFieldSpecified As Boolean + + Public Sub New() + MyBase.New + Me.testField = true + End Sub + + ''' + _ + Public Property Type() As UserType + Get + Return Me.typeField + End Get + Set + Me.typeField = value + End Set + End Property + + ''' + _ + Public Property Count() As String + Get + Return Me.countField + End Get + Set + Me.countField = value + End Set + End Property + + ''' + _ + Public Property Test() As Boolean + Get + Return Me.testField + End Get + Set + Me.testField = value + End Set + End Property + + ''' + _ + Public Property ValidUntil() As Date + Get + Return Me.validUntilField + End Get + Set + Me.validUntilField = value + End Set + End Property + + ''' + _ + Public Property ValidUntilSpecified() As Boolean + Get + Return Me.validUntilFieldSpecified + End Get + Set + Me.validUntilFieldSpecified = value + End Set + End Property +End Class + +''' + _ +Public Enum UserType + + ''' + PowerUser + + ''' + [ReadOnly] + + ''' + [WriteOnly] + + ''' + ReadWrite +End Enum diff --git a/EDMI_ClientSuite/MyApplication.vb b/EDMI_ClientSuite/MyApplication.vb index ec5661ae..d1dabc6e 100644 --- a/EDMI_ClientSuite/MyApplication.vb +++ b/EDMI_ClientSuite/MyApplication.vb @@ -22,7 +22,6 @@ Namespace My Partial Class MyApplication ' User Config Public User As New UserState() - Public License As New LicenseState() End Class End Namespace diff --git a/EDMI_ClientSuite/State/LicenseState.vb b/EDMI_ClientSuite/State/LicenseState.vb deleted file mode 100644 index f96b306d..00000000 --- a/EDMI_ClientSuite/State/LicenseState.vb +++ /dev/null @@ -1,25 +0,0 @@ -Public Class LicenseState - Public Modules As List(Of LicenseModule) -End Class - -Public Class LicenseModule - Public Name As String - Public ValidUntil As Date - Public Users As List(Of LicenseUser) -End Class - -Public Class LicenseUser - Public Type As UserType - Public Count As Integer - Public Test As Boolean - Public ValidUntil As Date -End Class - -Public Enum UserType - PowerUser - [ReadOnly] - [WriteOnly] - ReadWrite -End Enum - - diff --git a/EDMI_ClientSuite/_Skpokpotrings/ControlProperties.Designer.vb b/EDMI_ClientSuite/_Skpokpotrings/ControlProperties.Designer.vb deleted file mode 100644 index 12f2a903..00000000 --- a/EDMI_ClientSuite/_Skpokpotrings/ControlProperties.Designer.vb +++ /dev/null @@ -1,463 +0,0 @@ -'------------------------------------------------------------------------------ -' -' Dieser Code wurde von einem Tool generiert. -' Laufzeitversion:4.0.30319.42000 -' -' Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn -' der Code erneut generiert wird. -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - -Imports System - -Namespace My.Resources - - 'Diese Klasse wurde von der StronglyTypedResourceBuilder automatisch generiert - '-Klasse über ein Tool wie ResGen oder Visual Studio automatisch generiert. - 'Um einen Member hinzuzufügen oder zu entfernen, bearbeiten Sie die .ResX-Datei und führen dann ResGen - 'mit der /str-Option erneut aus, oder Sie erstellen Ihr VS-Projekt neu. - ''' - ''' Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. - ''' - _ - Friend Class ControlProperties - - Private Shared resourceMan As Global.System.Resources.ResourceManager - - Private Shared resourceCulture As Global.System.Globalization.CultureInfo - - _ - Friend Sub New() - MyBase.New - End Sub - - ''' - ''' Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. - ''' - _ - Friend Shared 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("DigitalData.GUIS.ClientSuite.ControlProperties", GetType(ControlProperties).Assembly) - resourceMan = temp - End If - Return resourceMan - End Get - End Property - - ''' - ''' Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle - ''' Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden. - ''' - _ - Friend Shared Property Culture() As Global.System.Globalization.CultureInfo - Get - Return resourceCulture - End Get - Set - resourceCulture = value - End Set - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Termin Einstellungen ähnelt. - ''' - Friend Shared ReadOnly Property category_appointment() As String - Get - Return ResourceManager.GetString("category_appointment", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Daten ähnelt. - ''' - Friend Shared ReadOnly Property category_data() As String - Get - Return ResourceManager.GetString("category_data", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Datenbank Einstellungen ähnelt. - ''' - Friend Shared ReadOnly Property category_database() As String - Get - Return ResourceManager.GetString("category_database", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Datums Einstellungen ähnelt. - ''' - Friend Shared ReadOnly Property category_date() As String - Get - Return ResourceManager.GetString("category_date", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Schrift Einstellungen ähnelt. - ''' - Friend Shared ReadOnly Property category_font() As String - Get - Return ResourceManager.GetString("category_font", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Form Einstellungen ähnelt. - ''' - Friend Shared ReadOnly Property category_form() As String - Get - Return ResourceManager.GetString("category_form", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Information ähnelt. - ''' - Friend Shared ReadOnly Property category_info() As String - Get - Return ResourceManager.GetString("category_info", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Eingabe Eigenschaften ähnelt. - ''' - Friend Shared ReadOnly Property category_input() As String - Get - Return ResourceManager.GetString("category_input", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Andere Einstellungen ähnelt. - ''' - Friend Shared ReadOnly Property category_other() As String - Get - Return ResourceManager.GetString("category_other", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Ansichts Einstellungen ähnelt. - ''' - Friend Shared ReadOnly Property category_view() As String - Get - Return ResourceManager.GetString("category_view", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Schlägt bereits eingegebene Einträge bei der der Eingabe vor. ähnelt. - ''' - Friend Shared ReadOnly Property desc_autosuggest() As String - Get - Return ResourceManager.GetString("desc_autosuggest", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Gibt die Hintergrundfarbe des Elements an. ähnelt. - ''' - Friend Shared ReadOnly Property desc_backcolor() As String - Get - Return ResourceManager.GetString("desc_backcolor", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Gibt den Beschreibungstext dieses Elements an. ähnelt. - ''' - Friend Shared ReadOnly Property desc_caption() As String - Get - Return ResourceManager.GetString("desc_caption", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Gibt den Spaltentitel des Elements an. ähnelt. - ''' - Friend Shared ReadOnly Property desc_col_title() As String - Get - Return ResourceManager.GetString("desc_col_title", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Gibt die Farbe an. ähnelt. - ''' - Friend Shared ReadOnly Property desc_color() As String - Get - Return ResourceManager.GetString("desc_color", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Gibt den Standardwert dieses Elements an. ähnelt. - ''' - Friend Shared ReadOnly Property desc_defaultvalue() As String - Get - Return ResourceManager.GetString("desc_defaultvalue", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Gibt die Beschreibung des Termins an. Dynamische Werte aus anderen Controls können mit der Syntax [%controlname] eingefügt werden ähnelt. - ''' - Friend Shared ReadOnly Property desc_description() As String - Get - Return ResourceManager.GetString("desc_description", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Gibt einen SQL Befehl an, der das Control abhängig vom Ergebnis (0 oder 1) aktiviert oder deaktiviert ähnelt. - ''' - Friend Shared ReadOnly Property desc_enabledwhen() As String - Get - Return ResourceManager.GetString("desc_enabledwhen", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Gibt die Schriftart an. ähnelt. - ''' - Friend Shared ReadOnly Property desc_fontstyle() As String - Get - Return ResourceManager.GetString("desc_fontstyle", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Gibt das Format des Textes an. ähnelt. - ''' - Friend Shared ReadOnly Property desc_format() As String - Get - Return ResourceManager.GetString("desc_format", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Gibt die Form-ID der zu öffnenden Form an. ähnelt. - ''' - Friend Shared ReadOnly Property desc_formid() As String - Get - Return ResourceManager.GetString("desc_formid", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Der Name eines Elements von dem das End-Datum gelesen wird. ähnelt. - ''' - Friend Shared ReadOnly Property desc_fromdate() As String - Get - Return ResourceManager.GetString("desc_fromdate", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Der Text, der beim überfahren des Controls angezeigt wird ähnelt. - ''' - Friend Shared ReadOnly Property desc_hint() As String - Get - Return ResourceManager.GetString("desc_hint", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Gibt die eindeutige ID des Elements an. ähnelt. - ''' - Friend Shared ReadOnly Property desc_id() As String - Get - Return ResourceManager.GetString("desc_id", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Gibt die Position des Elements an. ähnelt. - ''' - Friend Shared ReadOnly Property desc_location() As String - Get - Return ResourceManager.GetString("desc_location", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Die Id des Formulars, das über das Kontextmenü geöffnet wird. ähnelt. - ''' - Friend Shared ReadOnly Property desc_masterdataid() As String - Get - Return ResourceManager.GetString("desc_masterdataid", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Gibt an, ob das Feld mehrzeilig sein soll. ähnelt. - ''' - Friend Shared ReadOnly Property desc_multiline() As String - Get - Return ResourceManager.GetString("desc_multiline", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Gibt den internen Namen des Elements an. ähnelt. - ''' - Friend Shared ReadOnly Property desc_name() As String - Get - Return ResourceManager.GetString("desc_name", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Gibt den Ort des Termins an. Dynamische Werte aus anderen Controls können mit der Syntax [%controlname] eingefügt werden ähnelt. - ''' - Friend Shared ReadOnly Property desc_place() As String - Get - Return ResourceManager.GetString("desc_place", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Gibt an, ob dieses Element nur lesbar ist. ähnelt. - ''' - Friend Shared ReadOnly Property desc_readonly() As String - Get - Return ResourceManager.GetString("desc_readonly", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Gibt an ob dieses Element benötigt wird um die Eingabe abzuschließen. ähnelt. - ''' - Friend Shared ReadOnly Property desc_required() As String - Get - Return ResourceManager.GetString("desc_required", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Gibt die Screen-ID der zu öffnenden Form an. ähnelt. - ''' - Friend Shared ReadOnly Property desc_screenid() As String - Get - Return ResourceManager.GetString("desc_screenid", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Gibt an, ob nur vorhandene Listeneinträge ausgewählt werden können ähnelt. - ''' - Friend Shared ReadOnly Property desc_select_only() As String - Get - Return ResourceManager.GetString("desc_select_only", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Gibt an, ob das Feld als Spalte im Grid angezeigt wird. ähnelt. - ''' - Friend Shared ReadOnly Property desc_showcolumn() As String - Get - Return ResourceManager.GetString("desc_showcolumn", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Gibt die Größe des Elements an ähnelt. - ''' - Friend Shared ReadOnly Property desc_size() As String - Get - Return ResourceManager.GetString("desc_size", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Gibt die Datenbank-Abfrage für dieses Element an. Es können @RECORD_ID und @FORM_ID als Platzhalter verwendet werden. ähnelt. - ''' - Friend Shared ReadOnly Property desc_sqlcommand() As String - Get - Return ResourceManager.GetString("desc_sqlcommand", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Eine Liste von statischen Werten, die durch ';' getrennt sind. Überschreibt die Daten aus 'Datenbank-Einstellungen' ähnelt. - ''' - Friend Shared ReadOnly Property desc_staticlist() As String - Get - Return ResourceManager.GetString("desc_staticlist", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Gibt den Betreff des Termins an. Dynamische Werte aus anderen Controls können mit der Syntax [%controlname] eingefügt werden ähnelt. - ''' - Friend Shared ReadOnly Property desc_subject() As String - Get - Return ResourceManager.GetString("desc_subject", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Gibt den optionalen zweiten Betreff des Termins an. Dynamische Werte aus anderen Controls können mit der Syntax [%controlname] eingefügt werden ähnelt. - ''' - Friend Shared ReadOnly Property desc_subject2() As String - Get - Return ResourceManager.GetString("desc_subject2", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Gibt die Reihenfolge an, in der das Element durch die Tabulatortaste aktiviert wird. ähnelt. - ''' - Friend Shared ReadOnly Property desc_tabindex() As String - Get - Return ResourceManager.GetString("desc_tabindex", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Gibt an, ob das Element durch die Tabulartortaste aktiviert werden soll. ähnelt. - ''' - Friend Shared ReadOnly Property desc_tabstop() As String - Get - Return ResourceManager.GetString("desc_tabstop", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Der Name eines Elements von dem das Start-Datum gelesen wird. ähnelt. - ''' - Friend Shared ReadOnly Property desc_todate() As String - Get - Return ResourceManager.GetString("desc_todate", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Der Typ des Elements ähnelt. - ''' - Friend Shared ReadOnly Property desc_type() As String - Get - Return ResourceManager.GetString("desc_type", resourceCulture) - End Get - End Property - - ''' - ''' Sucht eine lokalisierte Zeichenfolge, die Gibt an, ob das Element angezeigt wird. ähnelt. - ''' - Friend Shared ReadOnly Property desc_visible() As String - Get - Return ResourceManager.GetString("desc_visible", resourceCulture) - End Get - End Property - End Class -End Namespace diff --git a/EDMI_ClientSuite/_Skpokpotrings/ControlProperties.en.Designer.vb b/EDMI_ClientSuite/_Skpokpotrings/ControlProperties.en.Designer.vb deleted file mode 100644 index e69de29b..00000000 diff --git a/EDMI_ClientSuite/_Skpokpotrings/ControlProperties.en.resx b/EDMI_ClientSuite/_Skpokpotrings/ControlProperties.en.resx deleted file mode 100644 index e526f696..00000000 --- a/EDMI_ClientSuite/_Skpokpotrings/ControlProperties.en.resx +++ /dev/null @@ -1,252 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 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 - - - Scheduler Configuration - - - Data - - - Database Configuration - - - Date Configuration - - - Font Configuration - - - Form Configuration - - - Information - - - Other Configuration - - - View Configuration - - - Suggests already entered entries - - - The element's background color. - - - The element's caption. - - - The element's color. - - - The element's colum title. - - - The element's default value. - - - The appointment's description. Dynamic values from other controls can be inserted with the syntax [%controlname]. - - - An SQL Query that enables or disables the Control depending on the result (0 or 1) - - - The element's font style. - - - The element's number format. - - - The form-ID of the form that will be opened. - - - The appointment's start-date. Dynamic values from other controls can be inserted with the syntax [%controlname]. - - - The text that will be shown when the control is hovered over - - - The element's unique identifier. - - - The element's location - - - The Form's Id that will be opened via the contextmenu. - - - Should the element be a multiline field? - - - The element's internal name - - - The appointment's location. Dynamic values from other controls can be inserted with the syntax [%controlname]. - - - Is the element read-only? - - - Is the element required to be filled to complete the input? - - - The screen-ID of the form that will be opened. - - - Can only existing list items be selected? - - - Should the element be show as a column? - - - The element's size - - - The database query for this element. @RECORD_ID and @FORM_ID can be used as placeholders. Dynamic values from other controls can be inserted with the Syntax @controlid@. - - - A list of static values seperated by a semicolon (;) - - - The appointment's subject. Dynamic values from other controls can be inserted with the syntax [%controlname]. - - - The appointment's optional secondary subject. Dynamic values from other controls can be inserted with the syntax [%controlname]. - - - The order in which this element should be activated by the tab key. - - - Should this element be activated by the tab key? - - - The appointment's end-date. Dynamic values from other controls can be inserted with the syntax [%controlname]. - - - The element's type - - - Should the element be visible? - - - Input Configuration - - \ No newline at end of file diff --git a/EDMI_ClientSuite/_Skpokpotrings/ControlProperties.resx b/EDMI_ClientSuite/_Skpokpotrings/ControlProperties.resx deleted file mode 100644 index af8c8fbb..00000000 --- a/EDMI_ClientSuite/_Skpokpotrings/ControlProperties.resx +++ /dev/null @@ -1,252 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 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 - - - Termin Einstellungen - - - Daten - - - Datenbank Einstellungen - - - Datums Einstellungen - - - Schrift Einstellungen - - - Form Einstellungen - - - Information - - - Andere Einstellungen - - - Ansichts Einstellungen - - - Schlägt bereits eingegebene Einträge bei der der Eingabe vor. - - - Gibt die Hintergrundfarbe des Elements an. - - - Gibt den Beschreibungstext dieses Elements an. - - - Gibt die Farbe an. - - - Gibt den Spaltentitel des Elements an. - - - Gibt den Standardwert dieses Elements an. - - - Gibt die Beschreibung des Termins an. Dynamische Werte aus anderen Controls können mit der Syntax [%controlname] eingefügt werden - - - Gibt einen SQL Befehl an, der das Control abhängig vom Ergebnis (0 oder 1) aktiviert oder deaktiviert - - - Gibt die Schriftart an. - - - Gibt das Format des Textes an. - - - Gibt die Form-ID der zu öffnenden Form an. - - - Der Name eines Elements von dem das End-Datum gelesen wird. - - - Der Text, der beim überfahren des Controls angezeigt wird - - - Gibt die eindeutige ID des Elements an. - - - Gibt die Position des Elements an. - - - Die Id des Formulars, das über das Kontextmenü geöffnet wird. - - - Gibt an, ob das Feld mehrzeilig sein soll. - - - Gibt den internen Namen des Elements an. - - - Gibt den Ort des Termins an. Dynamische Werte aus anderen Controls können mit der Syntax [%controlname] eingefügt werden - - - Gibt an, ob dieses Element nur lesbar ist. - - - Gibt an ob dieses Element benötigt wird um die Eingabe abzuschließen. - - - Gibt die Screen-ID der zu öffnenden Form an. - - - Gibt an, ob nur vorhandene Listeneinträge ausgewählt werden können - - - Gibt an, ob das Feld als Spalte im Grid angezeigt wird. - - - Gibt die Größe des Elements an - - - Gibt die Datenbank-Abfrage für dieses Element an. Es können @RECORD_ID und @FORM_ID als Platzhalter verwendet werden. - - - Eine Liste von statischen Werten, die durch ';' getrennt sind. Überschreibt die Daten aus 'Datenbank-Einstellungen' - - - Gibt den Betreff des Termins an. Dynamische Werte aus anderen Controls können mit der Syntax [%controlname] eingefügt werden - - - Gibt den optionalen zweiten Betreff des Termins an. Dynamische Werte aus anderen Controls können mit der Syntax [%controlname] eingefügt werden - - - Gibt die Reihenfolge an, in der das Element durch die Tabulatortaste aktiviert wird. - - - Gibt an, ob das Element durch die Tabulartortaste aktiviert werden soll. - - - Der Name eines Elements von dem das Start-Datum gelesen wird. - - - Der Typ des Elements - - - Gibt an, ob das Element angezeigt wird. - - - Eingabe Eigenschaften - - \ No newline at end of file diff --git a/EDMI_ClientSuite/frmMain.Designer.vb b/EDMI_ClientSuite/frmMain.Designer.vb index c667e950..3e5b83fb 100644 --- a/EDMI_ClientSuite/frmMain.Designer.vb +++ b/EDMI_ClientSuite/frmMain.Designer.vb @@ -57,6 +57,7 @@ Partial Class frmMain Me.DockPanelProcessManager = New DevExpress.XtraBars.Docking.DockPanel() Me.DockPanel2_Container = New DevExpress.XtraBars.Docking.ControlContainer() Me.ProcessManagerOverview = New EDMI_ClientSuite.ProcessManagerOverview() + Me.BarButtonItem2 = New DevExpress.XtraBars.BarButtonItem() CType(Me.RibbonControl, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.MainMenu, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.DocumentManager, System.ComponentModel.ISupportInitialize).BeginInit() @@ -73,9 +74,9 @@ Partial Class frmMain ' Me.RibbonControl.ApplicationButtonDropDownControl = Me.MainMenu Me.RibbonControl.ExpandCollapseItem.Id = 0 - Me.RibbonControl.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl.ExpandCollapseItem, Me.BarButtonExit, Me.BarButtonUserSettings, Me.LabelCurrentUser, Me.LabelCurrentMachine, Me.LabelCurrentVersion, Me.BarButtonItem1, Me.BarButtonDock1, Me.SkinDropDownButtonItem1, Me.BarButtonDashboard, Me.BarButtonEntityDesigner, Me.BarButtonDeleteControl, Me.BarButtonConnectionSettings, Me.LabelCurrentLanguage}) + Me.RibbonControl.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl.ExpandCollapseItem, Me.BarButtonExit, Me.BarButtonUserSettings, Me.LabelCurrentUser, Me.LabelCurrentMachine, Me.LabelCurrentVersion, Me.BarButtonItem1, Me.BarButtonDock1, Me.SkinDropDownButtonItem1, Me.BarButtonDashboard, Me.BarButtonEntityDesigner, Me.BarButtonDeleteControl, Me.BarButtonConnectionSettings, Me.LabelCurrentLanguage, Me.BarButtonItem2}) Me.RibbonControl.Location = New System.Drawing.Point(0, 0) - Me.RibbonControl.MaxItemId = 16 + Me.RibbonControl.MaxItemId = 17 Me.RibbonControl.Name = "RibbonControl" Me.RibbonControl.PageCategories.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageCategory() {Me.RibbonPageCategoryEntityDesigner}) Me.RibbonControl.PageHeaderItemLinks.Add(Me.SkinDropDownButtonItem1) @@ -218,6 +219,7 @@ Partial Class frmMain 'RibbonPageGroup3 ' Me.RibbonPageGroup3.ItemLinks.Add(Me.BarButtonItem1) + Me.RibbonPageGroup3.ItemLinks.Add(Me.BarButtonItem2) Me.RibbonPageGroup3.Name = "RibbonPageGroup3" Me.RibbonPageGroup3.Text = "RibbonPageGroup3" ' @@ -348,6 +350,12 @@ Partial Class frmMain Me.ProcessManagerOverview.Size = New System.Drawing.Size(337, 163) Me.ProcessManagerOverview.TabIndex = 0 ' + 'BarButtonItem2 + ' + Me.BarButtonItem2.Caption = "License Test" + Me.BarButtonItem2.Id = 16 + Me.BarButtonItem2.Name = "BarButtonItem2" + ' 'frmMain ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) @@ -413,4 +421,5 @@ Partial Class frmMain Friend WithEvents BarButtonDeleteControl As DevExpress.XtraBars.BarButtonItem Friend WithEvents BarButtonConnectionSettings As DevExpress.XtraBars.BarButtonItem Friend WithEvents LabelCurrentLanguage As DevExpress.XtraBars.BarStaticItem + Friend WithEvents BarButtonItem2 As DevExpress.XtraBars.BarButtonItem End Class diff --git a/EDMI_ClientSuite/frmMain.resx b/EDMI_ClientSuite/frmMain.resx index dc362ec9..9a1ff3b1 100644 --- a/EDMI_ClientSuite/frmMain.resx +++ b/EDMI_ClientSuite/frmMain.resx @@ -244,29 +244,29 @@ - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAAAMnRFWHRUaXRsZQBDdXN0b21l - cjtFbXBsb3llZTtQZXJzb247Q29udGFjdDtVc2VyO0NsaWVudH4RNugAAADNSURBVDhPpdExDkFBFAXQ - X4jeMkg0Kir03xrsRaWxCIuQ6EXCGv4KqL8CkXGvzLzMPP8xoTgymXffDaZwzv3l9TFbbLUh7OHiHWAM - Sc4qaMEJnHKGNkjWKuiCXg56IFmrYAJNyzQFyVoFS2haJs4kaxWM4AF6mXf8cyVrFdAOdAHvktynAj7Z - DcIyz9nPGMzh6PH8lrEKOrCC+M155h1nktUFA9jAHfi119D3eOYdZ8wwmxSUcIXwm79htowLqmiYq4oL - ajXMUUvB71zxBKd8P7UB7yhRAAAAAElFTkSuQmCC + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m + dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAydEVYdFRpdGxlAEN1c3RvbWVyO0VtcGxveWVlO1Bl + cnNvbjtDb250YWN0O1VzZXI7Q2xpZW50fhE26AAAAM1JREFUOE+l0TEOQUEUBdBfiN4ySDQqKvTfGuxF + pbEIi5DoRcIa/gqovwKRca/MvMw8/zGhODKZd98NpnDO/eX1MVtstSHs4eIdYAxJzipowQmccoY2SNYq + 6IJeDnogWatgAk3LNAXJWgVLaFomziRrFYzgAXqZd/xzJWsV0A50Ae+S3KcCPtkNwjLP2c8YzOHo8fyW + sQo6sIL4zXnmHWeS1QUD2MAd+LXX0Pd45h1nzDCbFJRwhfCbv2G2jAuqaJirigtqNcxRS8HvXPEEp3w/ + tQHvKFEAAAAASUVORK5CYII= - iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAAAMnRFWHRUaXRsZQBDdXN0b21l - cjtFbXBsb3llZTtQZXJzb247Q29udGFjdDtVc2VyO0NsaWVudH4RNugAAAH4SURBVFhHxdaxS1VhGMdx - QRcHh8BoVWppyL3VEApsCPpjoiFCF8FddHEPGhqFXGxVgoiGIAIlR7FoMEg4/n6H8xze571frw7e6/BZ - 3vO8z/fcex2caJrmVg0cPF/ZuY5leSe/5H/nWN7LC6E7SfRS3Gi4siHNFbaF7vail+JGw4WnQkHyUmhH - K3opbjRc8NdOMfJBaEcreiluNFz4LhQjP4R2tKKX4kbDhb9CMfJbaEcreiluNFyg0GX+Ce1oRS/FjYY7 - i0KhYXyHdvW9FDca7mwKRYbxHdrV91LcaLizJhQZxndoV99LcaPhzn05EQoRz/oO7ep7KW40XHgjFCOv - hHa0opfiRsOFR0Ix4lna0YpeihsNVz4KBUu7Qnd70Utxo+HKgpwJhc3PPEN3e9FLcaNh8ExOpY7/ET+j - O0n0Utxo+BJ35bX4J/kkb+We0OyA6KW40XBlEs5qU3CWRC/FjYYLj+WzPCjOav7r/yKepeet6KW4wfCc - rMg3id96T6alnp2RA4k531mVeUmz0UtxK4buyJb4/71YWNqXJ+Kv25bkq9Csd3iXd17rBR7KT6FltfMO - Pat5p3f3vRQ3PZyVQ6EFN8G7Z6NHL7BeDI/KevToBUb56cNh9OgF6MKNix69wFE9PAJH0Rt4gXHDw3HC - w3HCw/FpJi4ACnRMQSftMegAAAAASUVORK5CYII= + iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m + dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAydEVYdFRpdGxlAEN1c3RvbWVyO0VtcGxveWVlO1Bl + cnNvbjtDb250YWN0O1VzZXI7Q2xpZW50fhE26AAAAfhJREFUWEfF1rFLVWEYx3FBFweHwGhVamnIvdUQ + CmwI+mOiIUIXwV10cQ8aGoVcbFWCiIYgAiVHsWgwSDj+fofzHN7nvV+vDt7r8Fne87zP99x7HZxomuZW + DRw8X9m5jmV5J7/kf+dY3ssLoTtJ9FLcaLiyIc0VtoXu9qKX4kbDhadCQfJSaEcreiluNFzw104x8kFo + Ryt6KW40XPguFCM/hHa0opfiRsOFv0Ix8ltoRyt6KW40XKDQZf4J7WhFL8WNhjuLQqFhfId29b0UNxru + bApFhvEd2tX3UtxouLMmFBnGd2hX30txo+HOfTkRChHP+g7t6nspbjRceCMUI6+EdrSil+JGw4VHQjHi + WdrRil6KGw1XPgoFS7tCd3vRS3Gj4cqCnAmFzc88Q3d70Utxo2HwTE6ljv8RP6M7SfRS3Gj4Enfltfgn + +SRv5Z7Q7IDopbjRcGUSzmpTcJZEL8WNhguP5bM8KM5q/uv/Ip6l563opbjB8JysyDeJ33pPpqWenZED + iTnfWZV5SbPRS3Erhu7Ilvj/vVhY2pcn4q/bluSr0Kx3eJd3XusFHspPoWW18w49q3mnd/e9FDc9nJVD + oQU3wbtno0cvsF4Mj8p69OgFRvnpw2H06AXowo2LHr3AUT08AkfRG3iBccPDccLDccLD8WkmLgAKdExB + J+0x6AAAAABJRU5ErkJggg== diff --git a/EDMI_ClientSuite/frmMain.vb b/EDMI_ClientSuite/frmMain.vb index 7237e462..510e1f1a 100644 --- a/EDMI_ClientSuite/frmMain.vb +++ b/EDMI_ClientSuite/frmMain.vb @@ -106,4 +106,44 @@ Public Class frmMain frm.MdiParent = DocumentManager.MdiParent frm.Show() End Sub + + Private Sub BarButtonItem2_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem2.ItemClick + Dim oUser1 = New LicenseModuleUser With { + .Type = UserType.PowerUser, + .Test = False, + .Count = 5, + .ValidUntil = New Date(), + .ValidUntilSpecified = True + } + + Dim oUsers As New List(Of LicenseModuleUser) + oUsers.Add(oUser1) + + Dim oModule = New LicenseModule() With { + .Users = oUsers.ToArray(), + .Name = "EDMI", + .ValidUntil = New Date(), + .ValidUntilSpecified = True + } + + Dim oModules As New List(Of LicenseModule) + oModules.Add(oModule) + + Dim oLicense = New License() With { + .Modules = oModules.ToArray + } + + Dim oSerializer As New Xml.Serialization.XmlSerializer(GetType(License)) + + Using oStream = New FileStream("E:\license.xml", FileMode.Create) + oSerializer.Serialize(oStream, oLicense) + oStream.Flush() + End Using + + Dim oLicense2 As License + + Using oReader As New StreamReader("E:\license.xml") + oLicense2 = oSerializer.Deserialize(oReader) + End Using + End Sub End Class \ No newline at end of file diff --git a/SERVICES/DDEDM_NetworkService/App.config b/SERVICES/DDEDM_NetworkService/App.config index 203b962c..a1581da4 100644 --- a/SERVICES/DDEDM_NetworkService/App.config +++ b/SERVICES/DDEDM_NetworkService/App.config @@ -1,4 +1,4 @@ - + @@ -18,20 +18,19 @@ - + - - - - - - + + + + + + @@ -39,27 +38,19 @@ - + - + - + @@ -76,4 +67,9 @@ - \ No newline at end of file + + + + + + \ No newline at end of file diff --git a/SERVICES/DDEDM_NetworkService/DDEDMService.vbproj b/SERVICES/DDEDM_NetworkService/DDEDMService.vbproj index f2c98f78..5594f0b6 100644 --- a/SERVICES/DDEDM_NetworkService/DDEDMService.vbproj +++ b/SERVICES/DDEDM_NetworkService/DDEDMService.vbproj @@ -6,7 +6,7 @@ AnyCPU {A8C3F298-76AB-4359-AB3C-986E313B4336} Exe - DigitalData.Services.EDMService.EDMWindowsService + DigitalData.Services.EDMService.WindowsService DigitalData.Services.EDMService EDMService 512 @@ -47,29 +47,23 @@ On - - ..\..\DDMonorepo\Modules.Database\bin\Debug\DigitalData.Modules.Database.dll + + ..\..\packages\FirebirdSql.Data.FirebirdClient.6.4.0\lib\net452\FirebirdSql.Data.FirebirdClient.dll - - ..\..\DDMonorepo\Filesystem\bin\Debug\DigitalData.Modules.Filesystem.dll - - - ..\..\DDMonorepo\Modules.Logging\bin\Debug\DigitalData.Modules.Logging.dll - - - ..\..\DDMonorepo\Modules.Database\bin\Debug\FirebirdSql.Data.FirebirdClient.dll - - - ..\..\DDMonorepo\Modules.Logging\bin\Debug\NLog.dll + + + ..\..\packages\NLog.4.5.11\lib\net45\NLog.dll + + @@ -92,10 +86,9 @@ - - + Component @@ -145,6 +138,21 @@ PreserveNewest Designer + + + + + {991d0231-4623-496d-8bd0-9ca906029cbc} + Filesystem + + + {EAF0EA75-5FA7-485D-89C7-B2D843B03A96} + Database + + + {903B2D7D-3B80-4BE9-8713-7447B704E1B0} + Logging + \ No newline at end of file diff --git a/SERVICES/DDEDM_NetworkService/EDMService.vb b/SERVICES/DDEDM_NetworkService/EDMService.vb index 84d6cf13..22cca182 100644 --- a/SERVICES/DDEDM_NetworkService/EDMService.vb +++ b/SERVICES/DDEDM_NetworkService/EDMService.vb @@ -8,16 +8,11 @@ Imports DigitalData.Services.EDMService Public Class EDMService Implements IEDMService - Implements IDisposable - - Public Shared Event ClientConnectedEvent As EventHandler(Of Session) - Public Shared Event ClientDisconnectedEvent As EventHandler(Of Session) Public Shared LogConfig As LogConfig Public Shared Database As Firebird Public Shared AppConfig As AppConfig - Private ReadOnly _session As Session Private ReadOnly _logger As Logger Private _request As Request = Nothing @@ -29,13 +24,6 @@ Public Class EDMService Dim oUsername = oOperationContext.ServiceSecurityContext.WindowsIdentity.Name _logger = LogConfig.GetLogger() - _session = New Session(oUsername) - - RaiseEvent ClientConnectedEvent(Me, _session) - End Sub - - Public Sub Dispose() Implements IDisposable.Dispose - RaiseEvent ClientDisconnectedEvent(Me, _session) End Sub #Region "Request" diff --git a/SERVICES/DDEDM_NetworkService/EDMWindowsService.vb b/SERVICES/DDEDM_NetworkService/WindowsService.vb similarity index 97% rename from SERVICES/DDEDM_NetworkService/EDMWindowsService.vb rename to SERVICES/DDEDM_NetworkService/WindowsService.vb index 67b30681..16830755 100644 --- a/SERVICES/DDEDM_NetworkService/EDMWindowsService.vb +++ b/SERVICES/DDEDM_NetworkService/WindowsService.vb @@ -5,7 +5,7 @@ Imports DigitalData.Modules.Logging Imports DigitalData.Modules.Database Imports DigitalData.Modules.Database.Exceptions -Public Class EDMWindowsService +Public Class WindowsService Inherits ServiceBase Private _serviceHost As ServiceHost = Nothing @@ -23,7 +23,7 @@ Public Class EDMWindowsService End Sub Public Shared Sub Main() - Run(New EDMWindowsService()) + Run(New WindowsService()) End Sub Protected Overrides Sub OnStart(ByVal args As String()) diff --git a/SERVICES/DDEDM_NetworkService/packages.config b/SERVICES/DDEDM_NetworkService/packages.config new file mode 100644 index 00000000..9204b8da --- /dev/null +++ b/SERVICES/DDEDM_NetworkService/packages.config @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file