DragQueryFileW 函数 (shellapi.h)

检索由于成功拖放操作而删除的文件的名称。

语法

UINT DragQueryFileW(
  [in]  HDROP  hDrop,
  [in]  UINT   iFile,
  [out] LPWSTR lpszFile,
        UINT   cch
);

参数

[in] hDrop

类型: HDROP

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

[in] iFile

类型: UINT

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

[out] lpszFile

类型: LPTSTR

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

cch

类型: UINT

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

返回值

类型: UINT

非零值表示调用成功。

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

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

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

注解

注意

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

要求

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

另请参阅

DragQueryPoint