Partager via


Structure FILEDESCRIPTORA (shlobj_core.h)

Décrit les propriétés d’un fichier copié au moyen du Presse-papiers lors d’une opération de glisser-déplacer Microsoft ActiveX.

Syntaxe

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;

Membres

dwFlags

Type : DWORD

Tableau d’indicateurs qui indiquent les autres membres de la structure qui contiennent des données valides. Ce membre peut être une combinaison des valeurs suivantes.

FD_CLSID (0x00000001)

0x00000001. Le membre clsid est valide.

FD_SIZEPOINT (0x00000002)

0x00000002. Les membres sizel et pointl sont valides.

FD_ATTRIBUTES (0x00000004)

0x00000004. Le membre dwFileAttributes est valide.

FD_CREATETIME (0x00000008)

0x00000008. Le membre ftCreationTime est valide.

FD_ACCESSTIME (0x00000010)

0x00000010. Le membre ftLastAccessTime est valide.

FD_WRITESTIME (0x00000020)

0x00000020. Le membre ftLastWriteTime est valide.

FD_FILESIZE (0x00000040)

0x00000040. Les membres nFileSizeHigh et nFileSizeLow sont valides.

FD_PROGRESSUI (0x00004000)

0x00004000. Un indicateur de progression s’affiche avec des opérations de glisser-déplacer.

FD_LINKUI (0x00008000)

0x00008000. Traitez l’opération comme un raccourci.

FD_UNICODE ((int)0x80000000)

(int)0x80000000. Windows Vista et versions ultérieures. Le descripteur est Unicode.

clsid

Type : CLSID

Identificateur du type de fichier.

sizel

Type : SIZEL

Largeur et hauteur de l’icône de fichier.

pointl

Type : POINTL

Coordonnées d’écran de l’objet fichier.

dwFileAttributes

Type : DWORD

Indicateurs d’attribut de fichier. Il s’agit d’une combinaison des valeurs FILE_ATTRIBUTE_ décrites dans GetFileAttributes.

ftCreationTime

Type : FILETIME

Structure FILETIME qui contient l’heure de création du fichier.

ftLastAccessTime

Type : FILETIME

Structure FILETIME qui contient l’heure à laquelle le fichier a été consulté pour la dernière fois.

ftLastWriteTime

Type : FILETIME

Structure FILETIME qui contient l’heure de la dernière opération d’écriture.

nFileSizeHigh

Type : DWORD

DWORD d’ordre élevé de la taille de fichier, en octets.

nFileSizeLow

Type : DWORD

DWORD d’ordre inférieur de la taille de fichier, en octets.

cFileName[MAX_PATH]

Type : TCHAR[MAX_PATH]

Chaîne terminée par null qui contient le nom du fichier.

Remarques

Si le format CFSTR_FILECONTENTS qui correspond à cette structure contient le fichier en tant qu’objet mémoire global, nFileSizeHigh et nFileSizeLow spécifient la taille du bloc de mémoire associé. Si elles sont définies, elles peuvent également être utilisées si une interface utilisateur doit être affichée. Par exemple, si un fichier est sur le point d’être remplacé, vous utilisez généralement les informations de cette structure pour afficher une boîte de dialogue contenant la taille, les données et le nom du fichier.

Pour créer un fichier de longueur nulle, définissez l’indicateur FD_FILESIZE dans dwFlags, puis définissez nFileSizeHigh et nFileSizeLow sur zéro. Le format CFSTR_FILECONTENTS doit représenter le fichier sous la forme d’un flux ou d’un objet mémoire globale (TYMED_ISTREAM ou TYMED_HGLOBAL).

Notes

L’en-tête shlobj_core.h définit FILEDESCRIPTOR en tant qu’alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. La combinaison de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
En-tête shlobj_core.h