INI-File lesen/schreiben

  • VB.NET

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von dusti.

    INI-File lesen/schreiben

    Hi leute.

    Ich möchte gerne von einem Programm aus, das in Visual Studion 2003 .Net entwickelt wird, einstellungen in ein INI-File schreiben. Nun habe ich diese tollen snippets im Netz gefunden:


    VB.NET-Quellcode

    1. 'API-Funktionen deklarieren
    2. Private Declare Function WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationname As String, ByVal lpKeyName As Any, ByVal lsString As Any, ByVal lplFilename As String) As Long
    3. Private Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationname As String, ByVal lpKeyName As String, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long


    Funktionsaufrufe

    VB.NET-Quellcode

    1. Sub SaveINISetting(ByVal Filename As String, ByVal Key As String, ByVal Setting As String, ByVal Value As Variant)
    2. Call WritePrivateProfileString(Key, Setting, Value, Filename)
    3. End Sub
    4. Function GetINISetting(ByVal Filename As String, ByVal Key As String, ByVal Setting As String, ByVal Default As Variant) As Variant
    5. Dim Temp As String * 1024
    6. Call GetPrivateProfileString(Key, Setting, Default, Temp, Len(Temp), Filename)
    7. GetINISetting = Mid(Temp, 1, InStr(1, Temp, Chr(0)) - 1)
    8. End Function


    Nun sagt mir das .net studio aber folgende punkte:
    -"As Any" wird in "Declare"-Anweisungen nicht unterstützt. (bei API definitionen)

    - Ein Schlüsselwort darf kein Typzeichen enthalten. (Wegen dem "$-Zeichen" hinter String$ und Left$

    - "Public Property Left() As Integer" hat keine Parameter, und der Rückgabetyp kann nicht indiziert werden. (existieren mehrere versionen der funktion "Left"?)

    Was mus ich tun, damit das alles funktioniert? muss ich irgendwelche erweiterungen oder sowas einbinden, damit das funktioniert?

    bin nicht so ein genie in vb, habe die snippets wirklich 1:1 reinkopiert und als nix lief, habe ich ein wenig herumprobiert, damit die fehlermeldungen verschwanden und das programm wenigstens kompiliert werden konte. funktioniert hats dann aber nicht.

    Die obenstehen snippets sind original von shadoware.de/vb/ini.html

    hoffe ihr könnt mir helfen, ich komme echt nicht weiter

    thx und gruss
    Shitmaker
    Ich habe zwar keine Lösung für dein Problem, aber einen Tipp:
    In VB.Net 2005 (Ich weiss nicht, obs das auch schon in 2003 gibt), kann man Variablen als sog. Anwendungseinstellungen speichern. Das ist dann wie eine INI-Datei, nur das abrufen geht ganz einfach mit:

    VB.NET-Quellcode

    1. My.Settings.VariablenName = "Gewünschter Wert"


    KLicke einfach mal im Projetkmappen-Explorer auf "My Project" und dann auf Einstellungen. Dort kanst du die Variablen festlegen. Wie gesagt, ich weiss nicht, obs das schon bei 2003 gibt

    MfG dusti
    Wie gesagt, ich weiss nicht, obs das im 2003, das du benutzt, gibt. Such doch mal in der Hilfe nach "Anwendungseinstellungen". In der Eng hilfe heissen die mWn "Usersettings". Falls es das schon gibt, wirst du auch finden, wie das anzuwenden ist.