GetFileAttributes (kernel32)
Last changed: mklement0-173.48.238.201

.
Summary

C# Signature:

[DllImport("kernel32.dll", CharSet = CharSet.Auto, SetLastError = true)]
static extern int GetFileAttributes(string lpFileName);

VB.Net Signature:

<DllImport("kernel32.dll")>_
Public Shared Function GetFileAttributes(ByVal lpFileName As String) As Integer
End Function

'Constants
Const FILE_ATTRIBUTE_ARCHIVE = &H20
Const FILE_ATTRIBUTE_DIRECTORY = &H10
Const FILE_ATTRIBUTE_HIDDEN = &H2
Const FILE_ATTRIBUTE_NORMAL = &H80
Const FILE_ATTRIBUTE_READONLY = &H1
Const FILE_ATTRIBUTE_SYSTEM = &H4
Const FILE_ATTRIBUTE_TEMPORARY = &H100

User-Defined Types:

None.

Notes:

For long file names (260+ characters) prepend "\\?\" to the file name for local files and "\\?\UNC\" for network files.

e.g. D:\A\B\...\C --> \\?\D:\A\B\...\C and \\oscar\meyer\A\B\...\C --> \\?\UNC\oscar\meyer\A\B\...\C

Tips & Tricks:

Please add some!

Sample Code:

Please add some!

Alternative Managed API:

Do you know one? Please contribute it!

Documentation