PathResolve function (shlobj_core.h)
[PathResolve is available for use in the operating systems specified in the Requirements section. It may be altered or unavailable in subsequent versions.]
Converts a relative or unqualified path name to a fully qualified path name.
Syntax
int PathResolve(
[in, out] PWSTR pszPath,
[in, optional] PZPCWSTR dirs,
UINT fFlags
);
Parameters
[in, out] pszPath
Type: PWSTR
A null-terminated Unicode string that contains the path to resolve. When the function returns, the string contains the corresponding fully qualified path. This buffer should be at least MAX_PATH characters long.
[in, optional] dirs
Type: PZPCWSTR
A pointer to an optional null-terminated array of directories to be searched first in the case that the path cannot be resolved from pszPath. This value can be NULL.
fFlags
Type: UINT
Flags that specify how the function operates.
PRF_VERIFYEXISTS
Return TRUE if the file's existence is verified; otherwise FALSE.
PRF_TRYPROGRAMEXTENSIONS
Look for the specified path with the following extensions appended: .pif, .com, .bat, .cmd, .lnk, and .exe.
PRF_FIRSTDIRDEF
Look first in the directory or directories specified by dirs.
PRF_DONTFINDLNK
Ignore .lnk files.
PRF_REQUIREABSOLUTE
Require an absolute (full) path.
Return value
Type: int
Returns TRUE, unless PRF_VERIFYEXISTS is set. If that flag is set, the function returns TRUE if the file is verified to exist and FALSE otherwise. It also sets an ERROR_FILE_NOT_FOUND error code that you can retrieve by calling GetLastError.
Remarks
A FALSE return value does not necessarily mean that the file does not exist. It might mean that the function is simply unable to find the file from the supplied information.
If PathResolve cannot resolve the path specified in pszPath, it calls PathFindOnPath using pszPath and dirs as the parameters.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows XP [desktop apps only] |
Minimum supported server | Windows Server 2003 [desktop apps only] |
Target Platform | Windows |
Header | shlobj_core.h (include Shlobj.h) |
Library | Shell32.lib |
DLL | Shell32.dll (version 5.0 or later) |
API set | ext-ms-win-shell-shell32-l1-2-2 (introduced in Windows 10, version 10.0.14393) |