vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Zippen wie die Profis!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Alternative zu my.settings 
Autor: manuelhasi
Datum: 28.12.18 22:45

Hallo zusammen..

ich suche nach einer Alternative zu my.settings.
Dass Problem, welches mir aus my.settings entsteht ist die Tatsache, das die Einstellungen nur lokal auf einem Rechner abgespeichert werden. in einem Netzwerk sind diese Einstellungen aber nutzlos..
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Alternative zu my.settings 
Autor: Cheffboss
Datum: 29.12.18 10:18

Link:
https://de.wikipedia.org/wiki/Initialisierungsdatei
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Alternative zu my.settings 
Autor: manuelhasi
Datum: 29.12.18 11:57

Hallo Cheffboss

Danke für den Hinweis...

ich habe dazu auch promt was gefunden was die Sache sehr einfach erklärt und mein Problem schnell behoben hat... manchmal steht man schon mal auf dem Schlauch..

https://boschert-consulting.com/vb-net-einstellungen-in-ini-datei-speichern-und-auslesen/
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Alternative zu my.settings 
Autor: Manfred X
Datum: 30.12.18 06:47

Hallo!

Ini-Dateien sind veraltet, d.h. sie bieten wenige Optionen,
sind nicht typsicher, nicht an Controls zu binden und die
Zugriffe per API sind umständlich.

Schreibe die Einstellungen und ihre Werte in eine Datatable.
Mit den Methoden WriteXML und ReadXML werden alle Angaben
zu Columns und alle Werte in den Zeilen in einer XML-Datei
gespeichert bzw. wieder gelesen.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Eigene serialisierbare Klasse für Settings 
Autor: Manfred X
Datum: 30.12.18 09:36

Ergänzender Hinweis:

Die Soap-Serialisierung beherrscht auch Datentypen
wie Font oder Color, die bei Settingsvariablen oft vorkommen.
Es ist deshalb ggf. zweckmäßig, für die Einstellungen eine
entsprechende Klasse zu programmieren.

Ein Windows.Forms-Beispiel:
Public Class frmSettingsDemo
 
    'Klasse für die Serialisierung der Einstellungen
    Public Class SettingsSerialization
 
        'Der erforderliche Formatter (Projektverweis notwendig!)
        Dim ft As New _
         System.Runtime.Serialization.Formatters.Soap.SoapFormatter
 
 
        'Serialisierbare Datenklasse
        <System.Serializable>
        Public Class SettingsProperties
 
            'Festlegung der Eigenschaften incl. Datentyp und Defaultwert
            Public Property Text_Font As Font = New Font("Arial", 8)
            Public Property Text_Forecolor As Drawing.Color = Color.Black
            Public Property Text_Backcolor As Drawing.Color = Color.White
 
        End Class
 
        'Instanz für Aufbewahrung der Einstellungen  
        Public Settings As New SettingsProperties
 
        'Abfrage-Properties für die Datenbindiung
        ReadOnly Property Text_Font As Font
            Get
                Return Settings.Text_Font
            End Get
        End Property
 
        ReadOnly Property Text_Forecolor As Color
            Get
                Return Settings.Text_Forecolor
            End Get
        End Property
 
        ReadOnly Property Text_Backcolor As Color
            Get
                Return Settings.Text_Backcolor
            End Get
        End Property
 
        'Serialisierung / Speichern der Einstellungen in einer Datei
        Public Sub Serialize(ByVal FileName As String)
            'Instanz der SettingsProperties im Filestream speichern
            Using fs As New IO.FileStream(FileName, IO.FileMode.OpenOrCreate, _
              IO.FileAccess.Write)
                ft.Serialize(fs, Settings)
            End Using
        End Sub
 
        'Lesen der gespeicherten Einstellungen aus einer Datei
        Public Sub Deserialize(ByVal filename As String)
            Using fs As New IO.FileStream(filename, IO.FileMode.Open, _
              IO.FileAccess.Read)
                'Instanz der Settingsproperties ais Filetream lesen
                Settings = DirectCast(ft.Deserialize(fs), SettingsProperties)
            End Using
        End Sub
    End Class
 
 
 
    'Instanz der Klasse für Aufbewahrung und Serialisierung der eingestellten 
    ' Werte
    Dim mySettings As New SettingsSerialization
 
    'einzurichtendes Control
    Dim tbo As New TextBox With {.Parent = Me, .Width = 300}
 
 
    'Erstellen und Speichern der Einstellungen
    Private Sub CreateSettings()
 
        With mySettings
            With .Settings
                .Text_Backcolor = Color.Red
                .Text_Forecolor = Color.White
                .Text_Font = New Font("Arial", 20, FontStyle.Italic)
            End With
 
            'beliebige Datei als Parameter angeben
            .Serialize("G:\Daten\frmSettings.xml")
        End With
    End Sub
 
 
    'Lesen und Anbinden der Einstellungen
    Private Sub GetSettings()
 
        mySettings.Deserialize("G:\Daten\frmSettings.xml")
 
        With tbo.DataBindings
            .Add("Forecolor", mySettings, "Text_Forecolor")
            .Add("Backcolor", mySettings, "Text_Backcolor")
            .Add("Font", mySettings, "Text_Font")
        End With
 
    End Sub
 
 
 
    Private Sub frmSettingsDemo_Load(sender As Object, _
        e As EventArgs) Handles MyBase.Load
 
        CreateSettings() 'nur beim ersten Aufruf der Form erforderlich
 
        GetSettings()
    End Sub
End Class


Beitrag wurde zuletzt am 30.12.18 um 09:54:27 editiert.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel