PathFileExistsW 函数 (shlwapi.h)
确定文件系统对象(如文件或文件夹)的路径是否有效。
语法
BOOL PathFileExistsW(
[in] LPCWSTR pszPath
);
参数
[in] pszPath
类型:LPCTSTR
指向最大长度为 null 的字符串的指针,MAX_PATH包含要验证的对象的完整路径。
返回值
类型:BOOL
如果文件存在,则 TRUE;否则,FALSE。 调用 GetLastError 以获取扩展的错误信息。 如果文件不存在,GetLastError 将返回 ERROR_FILE_NOT_FOUND。
言论
此函数测试路径的有效性。
通用命名约定(UNC)指定的路径仅限于文件;即,允许 \server\share\file。 不允许服务器或服务器共享的 UNC 路径;即 \server 或 \server\share。 如果装载的远程驱动器服务不足,此函数将返回 FALSE。
例子
#include <windows.h>
#include <iostream.h>
#include "Shlwapi.h"
void main(void)
{
// Valid file path name (file is there).
char buffer_1[ ] = "C:\\TEST\\file.txt";
char *lpStr1;
lpStr1 = buffer_1;
// Invalid file path name (file is not there).
char buffer_2[ ] = "C:\\TEST\\file.doc";
char *lpStr2;
lpStr2 = buffer_2;
// Return value from "PathFileExists".
int retval;
// Search for the presence of a file with a true result.
retval = PathFileExists(lpStr1);
if(retval == 1)
{
cout << "Search for the file path of : " << lpStr1 << endl;
cout << "The file requested \"" << lpStr1 << "\" is a valid file" << endl;
cout << "The return from function is : " << retval << endl;
}
else
{
cout << "\nThe file requested " << lpStr1 << " is not a valid file" << endl;
cout << "The return from function is : " << retval << endl;
}
// Search for the presence of a file with a false result.
retval = PathFileExists(lpStr2);
if(retval == 1)
{
cout << "\nThe file requested " << lpStr2 << "is a valid file" << endl;
cout << "Search for the file path of : " << lpStr2 << endl;
cout << "The return from function is : " << retval << endl;
}
else
{
cout << "\nThe file requested \"" << lpStr2 << "\" is not a valid file" << endl;
cout << "The return from function is : " << retval << endl;
}
}
OUTPUT
==============
Search for the file path of : C:\TEST\file.txt
The file requested "C:\TEST\file.txt" is a valid file
The return from function is : 1
The file requested "C:\TEST\file.doc" is not a valid file
The return from function is : 0
注意
shlwapi.h 标头将 PathFileExists 定义为一个别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将中性编码别名与不中性编码的代码混合使用可能会导致编译或运行时错误不匹配。 有关详细信息,请参阅函数原型的
要求
要求 | 价值 |
---|---|
最低支持的客户端 | Windows 2000 Professional、Windows XP [仅限桌面应用] |
支持的最低服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | 窗户 |
标头 | shlwapi.h |
库 | Shlwapi.lib |
DLL | Shlwapi.dll(版本 4.71 或更高版本) |