vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#

https://www.vbarchiv.net
Rubrik: Dateisystem15.03.02
GetProfileString-Funktion

Diese Funktion liest einen String-Wert aus der Win.ini Datei.

Betriebssystem:  Win95, Win98, WinNT 3.1, Win2000, WinMEViews:  12.044 

Deklaration:

Declare Function GetProfileString Lib "kernel32.dll" _
  Alias "GetProfileStringA" ( _
  ByVal lpAppName As String, _
  ByVal lpKeyName As String, _
  ByVal lpDefault As String, _
  ByVal lpReturnedString As String, _
  ByVal nSize As Long) As Long


Beschreibung:

Diese Funktion liest einen String-Wert aus der Win.ini Datei.


Parameter:

lpAppNameErwartet den Namen der Applikation, die einen Eintrag in der Win.ini enthält der gelesen werden soll.
lpKeyNameErwartet den Namen eines Keys, der denWert enthält der gelesen werden soll.
lpDefaultErwartet einen String derzurückgegeben wird, wenn der gesuchte Eintrag nicht gefunden werden kann.
lpReturnedStringErwartet einen Puffer, der mit genügend Leerstellen gefüllt ist um den gefundenen String der Win.ini zu empfangen.
nSizeErwartet die Größe des Puffers in Bytes.


Rückgabewert:

Ist die Funktion erfolgreich, so liefert sie die Länge des gefunden Strings abzüglich des "VBNullChar"-Zeichens, andernfalls ist "0" dieRückgabe.


Beispiel:
Private Declare Function GetProfileInt Lib "kernel32.dll" _
  Alias "GetProfileIntA" ( _
  ByVal lpAppName As String, _
  ByVal lpKeyName As String, _
  ByVal nDefault As Long) As Long
Private Declare Function GetProfileString Lib "kernel32.dll" _
  Alias "GetProfileStringA" ( _
  ByVal lpAppName As String, _
  ByVal lpKeyName As String, _
  ByVal lpDefault As String, _
  ByVal lpReturnedString As String, _
  ByVal nSize As Long) As Long
Private Declare Function WriteProfileString Lib "kernel32.dll" _
  Alias "WriteProfileStringA" ( _
  ByVal lpszSection As String, _
  ByVal lpszKeyName As String, _
  ByVal lpszString As String) As Long
Private Sub Command1_Click()
  Dim Retval As Long
  Dim TmpWP As String, TmpTile As String, TmpDesc As String
 
  ' Hintergrundbild ermitteln und VbNullChar abtrennen
  TmpWP = Space(256)
  Retval = GetProfileString("Desktop", "Wallpaper", "Kein", TmpWP, Len(TmpWP))
  TmpWP = Left$(TmpWP, Retval)
 
  ' Art der Anzeige des Hintergrundbildes ermitteln
  Select Case GetProfileInt("Desktop", "TileWallpaper", 2)
  Case 1
    TmpTile = "auf der Fläche"
  Case 0
    TmpTile = "Mittig"
  Case Else
    TmpTile = "auf eine Unbekannte weise"
  End Select
 
  ' Ergebnis ausgeben und Frage zum Eintragen einer Bemerkung stellen
  MsgBox "Das Hintergundbild " & TmpWP & " wird " & TmpTile & " angeziegt"
  Retval = MsgBox("Wollen Sie eine Bemerkung in die Win.ini eintragen",  _
  vbQuestion + vbYesNo, "Bemerkung eintragen")
 
  ' entweder Bemerkung eintragen oder löschen
  If Retval = vbYes Then
    TmpDesc = InputBox("Bemerkung eingeben", "Bemerkung", "Bitte hier  _
    Bemerkung eingeben")
 
    ' wird eine leere Zeichenfolge oder nichts eingegeben so wird die  
    ' Bemerkung gelöscht
    If TmpDesc = "" Or TmpDesc = "Bitte Bemerkung eingeben" Then
      WriteProfileString "Desktop", "Bemerkung", vbNullString
    Else
      WriteProfileString "Desktop", "Bemerkung", TmpDesc
    End If
  End If
End Sub

 
 
Copyright ©2000-2024 vb@rchiv Dieter OtterAlle 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.