The GetFileTitle function returns the name of the file identified by the lpszFile parameter.
short GetFileTitle(
LPCTSTR lpszFile, |
// pointer to full path and filename for file |
LPTSTR lpszTitle, |
// pointer to buffer that receives filename |
WORD cbBuf |
// length of buffer |
); |
If the function succeeds, the return value is zero.
If the filename is invalid, the return value is a negative number.
If the buffer pointed to by the lpszTitle parameter is too small, the return value is a positive integer that specifies the required buffer size, in bytes (ANSI version) or characters (Unicode version). The required buffer size includes the terminating null character.
The GetFileTitle function returns an error value if the buffer pointed to by the lpszFile parameter contains any of the following elements:
To get the buffer size needed for the name of a file, call the function with lpszTitle set to NULL and cbBuf set to zero. The function will return the required size.
GetFileTitle returns the string that the system would use to display the filename to the user. The display name includes an extension only if that is the user’s preference for displaying filenames. This means that the returned string may not accurately identify the file if it is used in calls to file system functions.
If the lpszTitle buffer is too small, GetFileTitle returns the size required to hold the display name. There is no guaranteed connection between the required size and the characters originally specified in the lpszFile buffer. In porting applications to Windows 95 and Windows NT, developers will need to update any code that relies on such behavior in previous versions of the operating system. The most common case is code that deliberately calls GetFileTitle with lpszTitle set to NULL and cbBuf set to zero, and then uses the return value as an index into the lpszFile string. This technique is no longer supported. You can usually achieve similar results (and superior performance) with run-time library functions such as strrchr, wcsrchr, and _mbsrchr.