<Return[G]><Top>

GetFileAttributesEx

Declare Function Api_GetFileAttributesEx& Lib "kernel32" Alias "GetFileAttributesExA" (ByVal lpFileName$, ByVal fInfoLevelId As Struct_MembersOf_GET_FILEEX_INFO_LEVELS, lpFileInformation As Any)

Declare Function GetFileAttributesEx Lib "kernel32" Alias "GetFileAttributesExA" (ByVal lpFileName As String, ByVal fInfoLevelId As Struct_MembersOf_GET_FILEEX_INFO_LEVELS, lpFileInformation As Any) As Long

指定したファイルやディレクトリに関する属性情報を取得する。

パラメータ
lpFileName
    ファイルやディレクトリを表す、NULL で終わる文字列へのポインタを指定する。
    既定の最大長は MAX_PATH に指定された文字数である。この制限は、GetFileAttributesEx 関数がパスを解析する方法と関係ある。  

    この制限を超えて MAX_PATH に指定された文字数より長いパスを送信するには、パスの前に "\\?\" を付加して GetFileAttributesEx

    関数のワイド(W)バージョンを呼び出す。ただし、パスに含まれる各構成要素は MAX_PATH の文字数を超えないようにしなければなら

    ない。"\\?\" を付加することにより、関数がパスを解析するのを防ぐことができる。この方法は、UNC 名にも適用できる。"\\?\" はパス

    の一部として無視される。たとえば、"\\?\C:\myworld\private" は "C:\myworld\private" と解釈される。ま

    た、"\\?\UNC\peanuts\hotstuff\coolapps" は "\\peanuts\hotstuff\coolapps" と解釈される。
fInfoLevelId
    取得する一連の属性情報を示す、GET_FILEEX_INFO_LEVELS 列挙型を指定する。
lpFileInformation
    属性情報を受け取るバッファへのポインタを指定する。

    このバッファに格納される属性情報のタイプは、fInfoLevelId パラメータの値によって決まる。
戻り値
    関数が成功すると、0 以外の値が返る。
    関数が失敗すると、0 が返る。拡張エラー情報を取得するには、GetLastError 関数を使う。

解説
    GetFileAttributes 関数は FAT スタイルに関する一連の属性情報を返す。

    一方、GetFileAttributesEx 関数は、ファイルやディレクトリに関するその他の属性情報を取得する。

    現在のところ、GetFileAttributeEx 関数は FAT スタイルの属性情報のスーパーセットである標準属性を取得するようになっている。