The GetFullPathName function retrieves the full path and filename of a specified file.
DWORD GetFullPathName(
LPCTSTR lpFileName, | // address of name of file to find path for |
DWORD nBufferLength, | // size, in characters, of path buffer |
LPTSTR lpBuffer, | // address of path buffer |
LPTSTR *lpFilePart | // address of filename in path |
); |
Parameters
lpFileName
Points to a null-terminated string that specifies a valid filename. This string can use either short (the 8.3 form) or long filenames.
nBufferLength
Specifies the size, in characters, of the buffer for the drive and path.
lpBuffer
Points to a buffer that contains the null-terminated string for the name of the drive and path.
lpFilePart
Points to a variable that receives the address (in lpBuffer) of the final filename component in the path. This filename component is the long filename, if any, rather than the 8.3 form of the filename.
Return Values
If the GetFullPathName function succeeds, the return value is the length, in characters, of the string copied to lpBuffer, not including the terminating null character.
If the lpBuffer buffer is too small, the return value is the size of the buffer, in characters, required to hold the path.
If the function fails, the return value is zero. To get extended error information, call GetLastError.
Remarks
The GetFullPathName function merges the name of the current drive and directory with the specified filename to determine the full path and filename of the specified file. It also calculates the address of the filename portion of the full path and filename. This function does not verify that the resulting path and filename are valid or that they refer to an existing file on the associated volume.
See Also