如何删除writeprivateprofilestring建立的内容,或删除其中的某一项内容

解决方案 »

  1.   

    参考'require variable declaration
    Option Explicit'declares for ini controlling
    Private Declare Function GetPrivateProfileSection Lib "kernel32" Alias "GetPrivateProfileSectionA" (ByVal lpAppName As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long
    Private Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long
    Private Declare Function WritePrivateProfileSection Lib "kernel32" Alias "WritePrivateProfileSectionA" (ByVal lpAppName As String, ByVal lpString As String, ByVal lpFileName As String) As Long
    Private Declare Function WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As String) As Long'when form is loaded
    Private Sub Form_Load()'if error occures resume still
    On Error Resume Next'local variables
    Dim File As String, OFLen As Double, _
        Str As String'set our varibles
    File = "C:\temp.txt"
    OFLen = FileLen(File)'write few example sections:
    WriteIniSection File, "Test1", ""
    WriteIniSection File, "Test2", "Here shoud be found some text"'write few ini strings
    WriteIni File, "Test3", "Ini1", "This is ini 1"
    WriteIni File, "Test1", "Ini2", "This is ini 2"'inform we're written the data
    MsgBox Format((FileLen(File) - OFLen) / 1024, "0.00") & " KB data written to " & Chr(34) & File & Chr(34)'read the ini file
    Str = Str & "Test2 section: " & vbTab & ReadIniSection(File, "Test2") & vbCrLf
    Str = Str & "Test1 section: " & vbTab & ReadIniSection(File, "Test1") & vbCrLf
    Str = Str & "Ini1 string: " & vbTab & ReadIni(File, "Test3", "Ini1") & vbCrLf
    Str = Str & "Ini2 string: " & vbTab & ReadIni(File, "Test1", "Ini2") & vbCrLf'show data
    MsgBox Str'end application
    EndEnd Sub'// INI CONTROLLING PROCEDURES'reads ini string
    Public Function ReadIni(Filename As String, Section As String, Key As String) As String
    Dim RetVal As String * 255, v As Long
    v = GetPrivateProfileString(Section, Key, "", RetVal, 255, Filename)
    ReadIni = Left(RetVal, v - 1)
    End Function'reads ini section
    Public Function ReadIniSection(Filename As String, Section As String) As String
    Dim RetVal As String * 255, v As Long
    v = GetPrivateProfileSection(Section, RetVal, 255, Filename)
    ReadIniSection = Left(RetVal, v - 1)
    End Function'writes ini
    Public Sub WriteIni(Filename As String, Section As String, Key As String, Value As String)
    WritePrivateProfileString Section, Key, Value, Filename
    End Sub'writes ini section
    Public Sub WriteIniSection(Filename As String, Section As String, Value As String)
    WritePrivateProfileSection Section, Value, Filename
    End Sub