Rubrik: Dateisystem | 15.03.02 |
GetProfileInt-Funktion Diese Funktion liest einen Long-Wert aus der Win.ini Datei. | ||
Betriebssystem: Win95, Win98, WinNT 3.1, Win2000, WinME | Views: 8.153 |
Deklaration:
Declare Function GetProfileInt Lib "kernel32.dll" _ Alias "GetProfileIntA" ( _ ByVal lpAppName As String, _ ByVal lpKeyName As String, _ ByVal nDefault As Long) As Long
Beschreibung:
Diese Funktion liest einen Long-Wert aus der Win.ini Datei.
Parameter:
lpAppName | Erwartet den Namen der Applikation, bei der der Eintrag vorhanden ist der gelesen werden soll. |
lpKeyName | Erwartet den Schlüssel dessenWert gelesen werden soll. |
nDefault | Erwartet einen Wert der zurückgegeben wird, wenn kein entsprechender Eintrag gefunden wird. |
Rückgabewert:
Ist die Funktion erfolgreich so liefert sie den gelesenen Wert der Win.ini, andernfalls liefert die Funktion den "nDefault" Wert.
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, InStr(1, TmpWP, vbNullChar) - 1) ' 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 & " angezeigt" 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