Desktop Functions:

   Smart Device Functions:

Show Recent Changes
Subscribe (RSS)
Misc. Pages
Helpful Tools
Suggested Reading
Website TODO List
Download Visual Studio Add-In

WritePrivateProfileString (kernel32)

C# Signature:

[DllImport("kernel32.dll", CharSet=CharSet.Unicode, SetLastError=true)]
[return: MarshalAs(UnmanagedType.Bool)]
static extern bool WritePrivateProfileString(string lpAppName,
   string lpKeyName, string lpString, string lpFileName);

VB.NET Signature:

    <DllImport("kernel32.dll", SetLastError:=True)> _
Private Shared Function WritePrivateProfileString(ByVal lpAppName As String, _
                        ByVal lpKeyName As String, _
                        ByVal lpString As String, _
                        ByVal lpFileName As String) As Boolean
    End Function

VB.NET Alternative Signature:

    <DllImport("kernel32.dll", SetLastError:=True)> _
Private Declare Auto Function WritePrivateProfileString Lib "kernel32" (ByVal lpAppName As String, _    
                        ByVal lpKeyName As String, _
                        ByVal lpString As String, _
                        ByVal lpFileName As String) As Boolean

C++ Signature:

[DllImport("KERNEL32.DLL", CharSet=CharSet::Auto, EntryPoint="WritePrivateProfileString")]
static Boolean WritePrivateProfileString(String^ lpAppName, String^ lpKeyName, String^ lpString, String^ lpFileName);

User-Defined Types:



If StringToWrite is NULL, the line indicated by SectionName and KeyName will be deleted.

If KeyName is NULL, the entire section indicated by SectionName and all keys and values therein will be deleted.

Tips & Tricks:

Please add some!

Sample Code:

C# Sample:

bool WriteINI(string SectionName, string KeyName, string StringToWrite, string INIFileName)


    bool Return;
    Return = WritePrivateProfileString(SectionName,
    return Return;


VB.NET Sample

Dim bres As Boolean
bres = WritePrivateProfileString("AppName", "KeyName", "TestValue", "c:\test.ini")
Console.WriteLine("WritePrivateProfileString returned : " & bres.ToString())

VB.NET Alternative Sample

Public Function WriteIni(ByVal lpAppName As String, ByVal lpKeyName As String, ByVal lpString As String, ByVal lpFilename As String) As Boolean

     WritePrivateProfileString(lpAppname, lpKeyName, lpString, lpFilename)
     Return True
     Exit Try

     Catch ex As Exception

     Return False

     End Try
End Function

PowerShell Sample

Alternative Managed API:

Do you know one? Please contribute it!


Please edit this page!

Do you have...

  • helpful tips or sample code to share for using this API in managed code?
  • corrections to the existing content?
  • variations of the signature you want to share?
  • additional languages you want to include?

Select "Edit This Page" on the right hand toolbar and edit it! Or add new pages containing supporting types needed for this API (structures, delegates, and more).

Access directly from VS:
Terms of Use
Edit This Page
Find References
Show Printable Version