Estrutura FILEDESCRIPTORW (shlobj_core.h)

Descreve as propriedades de um arquivo que está sendo copiado por meio da área de transferência durante uma operação de arrastar e soltar do Microsoft ActiveX.

Sintaxe

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;

Membros

dwFlags

Tipo: DWORD

Uma matriz de sinalizadores que indicam qual dos outros membros da estrutura contém dados válidos. Esse membro pode ser uma combinação dos valores a seguir.

FD_CLSID (0x00000001)

0x00000001. O membro clsid é válido.

FD_SIZEPOINT (0x00000002)

0x00000002. Os membros sizel e pointl são válidos.

FD_ATTRIBUTES (0x00000004)

0x00000004. O membro dwFileAttributes é válido.

FD_CREATETIME (0x00000008)

0x00000008. O membro ftCreationTime é válido.

FD_ACCESSTIME (0x00000010)

0x00000010. O membro ftLastAccessTime é válido.

FD_WRITESTIME (0x00000020)

0x00000020. O membro ftLastWriteTime é válido.

FD_FILESIZE (0x00000040)

0x00000040. Os membros nFileSizeHigh e nFileSizeLow são válidos.

FD_PROGRESSUI (0x00004000)

0x00004000. Um indicador de progresso é mostrado com operações de arrastar e soltar.

FD_LINKUI (0x00008000)

0x00008000. Trate a operação como um atalho.

FD_UNICODE ((int)0x80000000)

(int)0x80000000. Windows Vista e posterior. O descritor é Unicode.

clsid

Tipo: CLSID

O identificador de tipo de arquivo.

sizel

Tipo: SIZEL

A largura e a altura do ícone de arquivo.

pointl

Tipo: POINTL

As coordenadas de tela do objeto de arquivo.

dwFileAttributes

Tipo: DWORD

Sinalizadores de atributo de arquivo. Essa será uma combinação dos valores de FILE_ATTRIBUTE_ descritos em GetFileAttributes.

ftCreationTime

Tipo: FILETIME

A estrutura FILETIME que contém a hora da criação do arquivo.

ftLastAccessTime

Tipo: FILETIME

A estrutura FILETIME que contém a hora em que o arquivo foi acessado pela última vez.

ftLastWriteTime

Tipo: FILETIME

A estrutura FILETIME que contém a hora da última operação de gravação.

nFileSizeHigh

Tipo: DWORD

O DWORD de alta ordem do tamanho do arquivo, em bytes.

nFileSizeLow

Tipo: DWORD

O DWORD de baixa ordem do tamanho do arquivo, em bytes.

cFileName[MAX_PATH]

Tipo: TCHAR[MAX_PATH]

A cadeia de caracteres terminada em nulo que contém o nome do arquivo.

Comentários

Se o formato CFSTR_FILECONTENTS que corresponde a essa estrutura contiver o arquivo como um objeto de memória global, nFileSizeHigh e nFileSizeLow especificarão o tamanho do bloco de memória associado. Se estiverem definidas, elas também poderão ser usadas se uma interface do usuário precisar ser exibida. Por exemplo, se um arquivo estiver prestes a ser substituído, você normalmente usaria informações dessa estrutura para exibir uma caixa de diálogo que contém o tamanho, os dados e o nome do arquivo.

Para criar um arquivo de comprimento zero, defina o sinalizador FD_FILESIZE no dwFlags e defina nFileSizeHigh e nFileSizeLow como zero. O formato CFSTR_FILECONTENTS deve representar o arquivo como um fluxo ou objeto de memória global (TYMED_ISTREAM ou TYMED_HGLOBAL).

Observação

O cabeçalho shlobj_core.h define FILEDESCRIPTOR como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante de pré-processador UNICODE. Misturar o uso do alias neutro de codificação com código que não seja neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Convenções para protótipos de função.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows XP [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Cabeçalho shlobj_core.h