FILEDESCRIPTORW 结构 (shlobj_core.h)

描述在 Microsoft ActiveX 拖放 操作期间通过剪贴板复制的文件的属性。

语法

typedef struct _FILEDESCRIPTORW {
  DWORD    dwFlags;
  CLSID    clsid;
  SIZEL    sizel;
  POINTL   pointl;
  DWORD    dwFileAttributes;
  FILETIME ftCreationTime;
  FILETIME ftLastAccessTime;
  FILETIME ftLastWriteTime;
  DWORD    nFileSizeHigh;
  DWORD    nFileSizeLow;
  WCHAR    cFileName[MAX_PATH];
} FILEDESCRIPTORW, *LPFILEDESCRIPTORW;

成员

dwFlags

类型:DWORD

标志数组,指示哪些其他结构成员包含有效数据。 此成员可以是以下值的组合。

FD_CLSID (0x00000001)

0x00000001。 clsid 成员有效。

FD_SIZEPOINT (0x00000002)

0x00000002。 sizelpointl 成员有效。

FD_ATTRIBUTES (0x00000004)

0x00000004。 dwFileAttributes 成员有效。

FD_CREATETIME (0x00000008)

0x00000008。 ftCreationTime 成员有效。

FD_ACCESSTIME (0x00000010)

0x00000010。 ftLastAccessTime 成员有效。

FD_WRITESTIME (0x00000020)

0x00000020。 ftLastWriteTime 成员有效。

FD_FILESIZE (0x00000040)

0x00000040。 nFileSizeHighnFileSizeLow 成员有效。

FD_PROGRESSUI (0x00004000)

0x00004000。 使用拖放操作显示进度指示器。

FD_LINKUI (0x00008000)

0x00008000。 将操作视为快捷方式。

FD_UNICODE ( (int) 0x80000000)

(int) 0x80000000。 Windows Vista 及更高版本。 描述符为 Unicode。

clsid

类型: CLSID

文件类型标识符。

sizel

类型: SIZEL

文件图标的宽度和高度。

pointl

类型: POINTL

文件对象的屏幕坐标。

dwFileAttributes

类型:DWORD

文件属性标志。 这是 GetFileAttributes 中描述的FILE_ATTRIBUTE_值的组合。

ftCreationTime

类型: FILETIME

包含文件创建时间的 FILETIME 结构。

ftLastAccessTime

类型: FILETIME

包含上次访问文件的时间的 FILETIME 结构。

ftLastWriteTime

类型: FILETIME

包含上次写入操作时间的 FILETIME 结构。

nFileSizeHigh

类型:DWORD

文件大小的高阶 DWORD (以字节为单位)。

nFileSizeLow

类型:DWORD

文件大小的低序 DWORD (以字节为单位)。

cFileName[MAX_PATH]

类型: TCHAR[MAX_PATH]

包含文件名的以 null 结尾的字符串。

注解

如果与此结构对应的 CFSTR_FILECONTENTS 格式包含文件作为全局内存对象, 则 nFileSizeHighnFileSizeLow 指定关联的内存块的大小。 如果已设置,则如果需要显示用户界面,也可以使用它们。 例如,如果文件即将被覆盖,通常使用此结构中的信息来显示包含文件大小、数据和名称的对话框。

若要创建零长度的文件,请在 dwFlags 中设置FD_FILESIZE标志,并将 nFileSizeHighnFileSizeLow 设置为零。 CFSTR_FILECONTENTS格式应将文件表示为流或全局内存对象, (TYMED_ISTREAMTYMED_HGLOBAL) 。

注意

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

要求

要求
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
标头 shlobj_core.h