[VB6] Запись и чтение INI файлов

Тема в разделе "Банк полезных кодов", создана пользователем Dragokas, 4 сен 2016.

  1. Dragokas
    Оффлайн

    Dragokas Very kind Developer Команда форума Супер-Модератор Разработчик Клуб переводчиков

    Сообщения:
    4.497
    Симпатии:
    4.312
    Код (vb.net):
    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 WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" _
            (ByVal lpapplicationname As Any, ByVal lpkeyname As Any, _
            ByVal lpstring As Any, ByVal lpfilename As String) As Long

    Public Sub writeINI(sINIFile As String, sSection As String, sKey As String, sValue As String)
        Dim n As Integer
        Dim sTemp  As String
        sTemp = sValue
        For n = 1 To Len(sValue)
            If Mid$(sValue, n, 1) = vbCr Or Mid$(sValue, n, 1) = vbLf Then Mid$(sValue, n) = " "
        Next n
        n = WritePrivateProfileString(sSection, sKey, sTemp, sINIFile)
    End Sub

    Public Function sGetINI(sINIFile As String, sSection As String, sKey As String, sdefault As String)
        Dim sTemp  As String * 256
        Dim nLength As Integer
        sTemp = Space$(256)
        nLength = GetPrivateProfileString(sSection, sKey, sdefault, sTemp, 255, sINIFile)
        sGetINI = Left$(sTemp, nLength)
    End Function
    Пример использования:

    Код (vb.net):

    'запись
    writeINI App.Path & "\test.ini", "TestSection", "TestKey", txtValue

    'чтение
    txtValue = sGetINI(App.Path & "\test.ini", "TestSection", "TestKey", "None")
    End Sub
    Синтаксис:

    writeINI [путь к файлу], [имя секции], [имя параметра (ключа)], [значение]

    переменная = sGetINI([путь к файлу], [имя секции], [имя параметра (ключа)], [значение])
     
    Последнее редактирование: 4 сен 2016

Поделиться этой страницей