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 和更新版本。 描述項為 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 格式包含檔案做為全域記憶體物件, nFileSizeHigh 和 nFileSizeLow 會指定相關聯記憶體區塊的大小。 如果已設定,則如果需要顯示使用者介面,也可以使用它們。 例如,如果檔案即將被覆寫,您通常會使用此結構的信息來顯示包含檔案大小、數據和名稱的對話方塊。
若要建立長度為零的檔案,請將 dwFlags 中的FD_FILESIZE旗標設定為零,並將 nFileSizeHigh 和 nFileSizeLow 設定為零。 CFSTR_FILECONTENTS格式應該將檔案表示為數據流或全域記憶體物件, (TYMED_ISTREAM 或TYMED_HGLOBAL) 。
注意
shlobj_core.h 標頭會將 FILEDESCRIPTOR 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows XP [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限桌面應用程式] |
標頭 | shlobj_core.h |