Imports EgtWPFLib5
Imports EgwProxy.LiMan
Public Module Configuration
' Test per comunicazione
Public m_commLib As DataSyncro
'''
''' Flag per impostare la visualizzazione con la singola pagina
'''
Private m_bOnlyProd As Boolean
Public ReadOnly Property bOnlyProd As Boolean
Get
Return m_bOnlyProd
End Get
End Property
Public Sub SetOnlyProd(value As Boolean)
m_bOnlyProd = value
End Sub
'''
''' Flag per visualizzare il pulsante Db Attrezzaggi
'''
Private m_bModifySetup As Boolean
Public ReadOnly Property bModifySetup As Boolean
Get
Return m_bModifySetup
End Get
End Property
Public Sub SetModifySetup(value As Boolean)
m_bModifySetup = value
End Sub
'''
''' Flag per salvare correttamente i dati nel file lua corretto
'''
Private m_bMachConfig As Boolean
Public ReadOnly Property bMachConfig As Boolean
Get
Return m_bMachConfig
End Get
End Property
Public Sub SetMachConfig(value As Boolean)
m_bMachConfig = value
End Sub
'''
''' Flag per impostare la visualizzazione con la singola pagina
'''
Private m_sServerAddressRelease As String
Public ReadOnly Property sServerAddressRelease As String
Get
Return m_sServerAddressRelease
End Get
End Property
Public Sub SetServerAddressRelease(value As String)
m_sServerAddressRelease = value
End Sub
' Versione attuale del programma
Public ReadOnly Property ActualVersion As String
Get
Return My.Application.Info.Version.ToString()
End Get
End Property
'''
''' Funzione che recupera la directory del file INI
'''
Public Sub GetIniFileDirectory()
' Impostazione path radice per i dati
Dim m_sDataRoot As String = System.AppDomain.CurrentDomain.BaseDirectory
If EgtUILib.GetPrivateProfileString(ConstGen.S_DATA, ConstGen.K_DATAROOT, "", m_sDataRoot, m_sDataRoot & "\" & ConstGen.DAT_FILE_NAME) = 0 Then
m_sDataRoot = System.AppDomain.CurrentDomain.BaseDirectory
End If
' Impostazione direttorio di configurazione
Dim m_sConfigDir As String = m_sDataRoot & "\" & ConstGen.CONF_DIR
' Impostazione path Ini file
IniFile.m_sIniFile = m_sConfigDir & "\" & Core.ConstIni.INI_FILE_NAME
End Sub
'''
''' Funzione per recuperare bOnlyProd
'''
''' Sezione dove si trova la variabile che devo cercare
''' Variabile che sto cercando
''' Cartella dove e' presente il file ini
''' Valore di defaul opzionabile
'''
Public Function Read_Value(Section As String, Key As String, Path As String, Optional Default_Value As String = "") As String
Dim Reader_Lines As String() = System.IO.File.ReadAllLines(Path)
Dim Current_Section As String = ""
For Each Reader_Line As String In Reader_Lines
If Reader_Line.StartsWith("[") AndAlso Reader_Line.EndsWith("]") Then
Current_Section = Reader_Line
ElseIf Current_Section.Equals($"[{Section}]") Then
Dim lineParts As String() = Reader_Line.Split({"="c}, 2)
If lineParts.Length >= 1 AndAlso lineParts(0) = Key Then
Return If(lineParts.Length >= 2, lineParts(1), Default_Value)
End If
End If
Next
Return Default_Value
End Function
'''
''' Metodo che controlla la comunicazione server
'''
'''
Public Function GetComunication() As Boolean
' eseguo test per comunicazione server (ping, alive)
m_commLib = New DataSyncro(EgtBEAMWALL.Core.Configuration.sServerAddressRelease)
If m_commLib.CheckRemote() Then
Return True
Else
Return False
End If
End Function
End Module