Search
Module:
Directory

   Desktop Functions:

   Smart Device Functions:


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

GetLongPathName (kernel32)
 
.
Summary
Converts the specified path to its long form.

C# Signature:

using System.Runtime.InteropServices;
using System.Text;

[DllImport("kernel32.dll", SetLastError=true, CharSet=CharSet.Auto)]
static extern uint GetLongPathName(
    string lpszShortPath,
    [Out] StringBuilder lpszLongPath,
    uint cchBuffer);

User-Defined Types:

None.

Notes:

The GetLongPathName API call is only available on Windows 98/ME and Windows 2000/XP. It is not available on Windows 95 & NT.

The file must exist to get the correct path. This is because the full path comes from the file system information. If an invalid name is given and exception is not thrown rather the name is just a blank space.

Tips & Tricks:

Please add some!

Sample Code:

/// <summary>
/// The ToLongPathName function retrieves the long path form of a specified short input path
/// </summary>
/// <param name="shortName">The short name path</param>
/// <returns>A long name path string</returns>
public static string ToLongPathName(string shortName)
{
    StringBuilder longNameBuffer = new StringBuilder(256);
    uint bufferSize = (uint)longNameBuffer.Capacity;

    GetLongPathName(shortName, longNameBuffer, bufferSize);

    return longNameBuffer.ToString();
}

Alternative Managed API:

Do you know one? Please contribute it!

Documentation

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 PInvoke.net directly from VS:
Terms of Use
Find References
Show Printable Version
Revisions