DragQueryFileA 函数 (shellapi.h)

检索成功拖放操作导致的已删除文件的名称。

语法

UINT DragQueryFileA(
  [in]  HDROP hDrop,
  [in]  UINT  iFile,
  [out] LPSTR lpszFile,
        UINT  cch
);

参数

[in] hDrop

类型:HDROP

包含已删除文件的文件名的结构的标识符。

[in] iFile

类型:UINT

要查询的文件的索引。 如果此参数的值0xFFFFFFFF,DragQueryFile 返回删除的文件计数。 如果此参数的值介于零和删除的文件总数之间,DragQueryFile 会将具有相应值的文件名复制到由 lpszFile 参数指向的缓冲区。

[out] lpszFile

类型:LPTSTR

在函数返回时接收已删除文件的文件名的缓冲区的地址。 此文件名是以 null 结尾的字符串。 如果此参数 NULLDragQueryFile 返回此缓冲区所需的大小(以字符为单位)。

cch

类型:UINT

lpszFile 缓冲区的大小(以字符为单位)。

返回值

类型:UINT

非零值表示成功的调用。

函数将文件名复制到缓冲区时,返回值是复制的字符计数,不包括终止 null 字符。

如果索引值0xFFFFFFFF,则返回值是已删除文件的计数。 请注意,索引变量本身返回不变,因此仍0xFFFFFFFF。

如果索引值介于零和已删除文件的总数之间,并且 lpszFile 缓冲区地址 NULL,则返回值是缓冲区所需的大小(以字符为单位)不包括终止 null 字符

言论

注意

shellapi.h 标头将 DragQueryFile 定义为一个别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将中性编码别名与不中性编码的代码混合使用可能会导致编译或运行时错误不匹配。 有关详细信息,请参阅函数原型的 约定。

要求

要求 价值
最低支持的客户端 Windows XP [仅限桌面应用]
支持的最低服务器 Windows 2000 Server [仅限桌面应用]
目标平台 窗户
标头 shellapi.h
Shell32.lib
DLL Shell32.dll(版本 4.0 或更高版本)
API 集 ext-ms-win-shell-shell32-l1-2-1(在 Windows 10 版本 10.0.10240 中引入)

另请参阅

DragQueryPoint