Структура FILEDESCRIPTORA (shlobj_core.h)

Описывает свойства файла, копируемого с помощью буфера обмена во время операции перетаскивания Microsoft ActiveX.

Синтаксис

typedef struct _FILEDESCRIPTORA {
  DWORD    dwFlags;
  CLSID    clsid;
  SIZEL    sizel;
  POINTL   pointl;
  DWORD    dwFileAttributes;
  FILETIME ftCreationTime;
  FILETIME ftLastAccessTime;
  FILETIME ftLastWriteTime;
  DWORD    nFileSizeHigh;
  DWORD    nFileSizeLow;
  CHAR     cFileName[MAX_PATH];
} FILEDESCRIPTORA, *LPFILEDESCRIPTORA;

Члены

dwFlags

Тип: DWORD

Массив флагов, указывающих, какие из других элементов структуры содержат допустимые данные. Этот элемент может быть сочетанием следующих значений.

FD_CLSID (0x00000001)

0x00000001. Элемент clsid является допустимым.

FD_SIZEPOINT (0x00000002)

0x00000002. Допустимы члены sizel и pointl .

FD_ATTRIBUTES (0x00000004)

0x00000004. Допустимый член dwFileAttributes .

FD_CREATETIME (0x00000008)

0x00000008. Действительный член ftCreationTime .

FD_ACCESSTIME (0x00000010)

0x00000010. Действительный член ftLastAccessTime .

FD_WRITESTIME (0x00000020)

0x00000020. Действительный член ftLastWriteTime .

FD_FILESIZE (0x00000040)

0x00000040. Допустимы члены nFileSizeHigh и nFileSizeLow .

FD_PROGRESSUI (0x00004000)

0x00004000. Индикатор хода выполнения отображается с операциями перетаскивания.

FD_LINKUI (0x00008000)

0x00008000. Рассматривайте операцию как ярлык.

FD_UNICODE ((int)0x80000000)

(int)0x80000000. Windows Vista и более поздних версий. Дескриптор — Юникод.

clsid

Тип: CLSID

Идентификатор типа файла.

sizel

Тип: SIZEL

Ширина и высота значка файла.

pointl

Тип: POINTL

Экранные координаты объекта файла.

dwFileAttributes

Тип: DWORD

Флаги атрибутов файла. Это будет сочетание FILE_ATTRIBUTE_ значений, описанных в разделе GetFileAttributes.

ftCreationTime

Тип: FILETIME

Структура FILETIME , содержащая время создания файла.

ftLastAccessTime

Тип: FILETIME

Структура FILETIME , содержащая время последнего доступа к файлу.

ftLastWriteTime

Тип: FILETIME

Структура FILETIME , содержащая время последней операции записи.

nFileSizeHigh

Тип: DWORD

DWORD высокого порядка размера файла в байтах.

nFileSizeLow

Тип: DWORD

DWORD низкого порядка размера файла в байтах.

cFileName[MAX_PATH]

Тип: TCHAR[MAX_PATH]

Строка, завершающаяся значением NULL, содержащая имя файла.

Комментарии

Если формат CFSTR_FILECONTENTS , соответствующий этой структуре, содержит файл в качестве глобального объекта памяти, nFileSizeHigh и nFileSizeLow укажите размер связанного блока памяти. Если они заданы, их также можно использовать при отображении пользовательского интерфейса. Например, если файл будет перезаписан, обычно используются сведения из этой структуры для отображения диалогового окна с размером, данными и именем файла.

Чтобы создать файл нулевой длины, задайте для флага FD_FILESIZE в dwFlags, а для nFileSizeHigh и nFileSizeLow задайте нулевое значение. Формат CFSTR_FILECONTENTS должен представлять файл в виде потока или объекта глобальной памяти (TYMED_ISTREAM или TYMED_HGLOBAL).

Примечание

Заголовок shlobj_core.h определяет FILEDESCRIPTOR как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Сочетание использования псевдонима, не зависящий от кодировки, с кодом, не зависящим от кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.

Требования

Требование Значение
Минимальная версия клиента Windows XP [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Верхняя часть shlobj_core.h