Vorheriges Thema: DeleteIniEntry - Entfernen eines Eintrags aus einer InitialisierungsdateiNächstes Thema: ReadIniSection - Abrufen eines Abschnitts


DeleteIniSection - Entfernen eines Abschnitts aus einer Initialisierungsdatei

Gültig für UNIX-Plattformen.

Die Funktion "DeleteIniSection" entfernt einen vollständigen Abschnitt aus einer angegebenen Initialisierungsdatei (.ini).

Diese Initialisierungsfunktion (.ini) hat das folgende Format:

DeleteIniSection(section as String, filename as String) as Boolean
section

Gibt den zu löschenden Abschnitt an.

Dateiname

Gibt den Namen der Initialisierungsdatei (.ini) an.

Bei erfolgreichem Abschluss gibt die Funktion TRUE zurück, andernfalls FALSE.

Beispiel: Funktion "DeleteIniSection"

In diesem Beispiel werden der Abschnitt "LIST" aus der Datei "c:\temp\test.ini" und der Eintrag "Entry" aus dem Abschnitt "SINGLE" abgerufen und gedruckt. Dann werden der Abschnitt "LIST" und der Eintrag "Entry" aus dem Abschnitt "SINGLE" gelöscht.

Function strTok(in As string, BYREF pos As Integer, token As String, BYREF out As String) As Boolean
	Dim buf As String
	Dim len As Integer

	If (pos > Len(in)) Then
		strTok = FALSE
	Else
		buf = Mid(in, pos)
		len = Instr(buf, token)
		If len = 0 Then
			out = buf
			pos = pos + Len(buf) + 1
		Else
			out = Mid(buf, 0, len-1)

pos = pos + len + 1
		End If
		strTok = TRUE
	End If
End Function

Dim attrList, str, lf As string
Dim pos As Integer

' clear screen
ClrScr()

If Not(ReadIniSection("LIST", attrList, "c:\temp\test.ini")) Then
	MessageBox("Abschnitt LIST kann nicht gelesen werden", "DMS", MB_OK + MB_ICONEXCLAMATION)
	SetStatus(1)
	Beenden
End If
Print("[LIST]")
pos = 0
lf = chr(10)
While (strTok(attrList, pos, lf, str))
	Print(str)
Wend

If Not(ReadIniEntry("SINGLE", "Entry", attrList, "c:\temp\test.ini")) Then

MessageBox("Abschnitt SINGLE kann nicht gelesen werden", "DMS", MB_OK + MB_ICONEXCLAMATION)
	SetStatus(2)
	Beenden
End If

Print("[SINGLE]" + NEWLINE$ + "Entry=" + attrList)

If Not(DeleteIniEntry("SINGLE", "Entry", "c:\temp\test.ini")) Then
	MessageBox("[SINGLE].Entry kann nicht gelöscht werden ", "DMS", MB_OK + MB_ICONEXCLAMATION)
	SetStatus(3)
	Beenden
End If
If Not(DeleteIniSection("LIST", "c:\temp\test.ini")) Then
	MessageBox("Abschnitt LIST kann nicht gelöscht werden", "DMS", MB_OK + MB_ICONEXCLAMATION)

SetStatus(4)
	Beenden
End If