此解决方案转载自博客园,著作权归作者tec2019所有。

代码如下:

Option Explicit
   'read
   Private Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" _
                 (ByVal lpApplicationName As String, _
                   ByVal lpKeyName As String, _
                   ByVal lpDefault As String, _
                   ByVal lpReturnedString As String, _
                   ByVal nSize As Long, _
                   ByVal lpFileName As String) As Long
   'write
   Private Declare Function WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" _
                 (ByVal lpApplicationName As String, _
                   ByVal lpKeyName As String, _
                   ByVal lpString As String, _
                   ByVal lpFileName As String) As Long
 
Sub Read()
    Dim Rec As String
    Dim NC As Long

    Rec = String(255, 0)
    NC = GetPrivateProfileString("BOOT", "Shell", "", Rec, 255, "D:\test.ini")
    MsgBox Rec
End Sub

Sub WriteProfile()
    Dim NC As Long
    
    NC = WritePrivateProfileString("BOOT", "Shell", "Test1", "D:\test.ini")
End Sub

注:
如果是64位系统,则需要在Delcare后面增加PtrSafe关键字,否则会报错