<Return[G]><Top>

GetPrivateProfileSectionNames

Declare Function Api_GetPrivateProfileSectionNames& Lib "Kernel32" Alias "GetPrivateProfileSectionNamesA" (ByVal lpszReturnBuffer$, ByVal nSize&, ByVal lpFileName$)

Declare Function GetPrivateProfileSectionNames Lib "kernel32" Alias "GetPrivateProfileSectionNamesA" (ByVal lpszReturnBuffer As String, ByVal nSize As Long, ByVal lpFileName As String) As Long

.ini ファイル(初期化ファイル)から、すべてのセクションの名前を取得する。
この関数は、16 ビット Windows ベースのアプリケーションとの互換性を保つ目的でのみ提供されている。Win32 ベースのアプリケーションでは、初期化情報をレジストリに格納する。

パラメータ
lpszReturnBuffer
    1 個のバッファへのポインタを指定する。

    関数から制御が返ると、このバッファに、指定した .ini ファイル内に存在するすべてのセクション名が格納される。

    セクション名とセクション名の間に NULL が挿入される。

    その結果、このバッファには、NULL で終わる文字列が 1 つまたは複数格納される。

    バッファの最後には、もう 1 つの NULL が挿入される。
nSize
    lpszReturnBuffer パラメータが指すバッファのサイズを、TCHAR 単位で指定する。
lpFileName
    .ini ファイルの名前を保持している、NULL で終わる文字列へのポインタを指定する。

    NULL を指定すると、この関数は Win.ini ファイル内でセクションを検索する。

    フルパス名を指定しなかった場合、システムは Windows ディレクトリ内でこのファイルを検索する。
 

戻り値
    バッファに格納された文字数が返る(最後の 1 つの NULL を除く)。

    バッファのサイズが不足して、指定した .ini ファイル内のセクション名の一部を格納できない場合、nSize-2 の値が返る。

解説
    この関数は、一括して操作を行う。.ini ファイル内のセクション名をバッファへコピーしている最中は、その .ini ファイルを更新できない。