FILEDESCRIPTORW 結構 (shlobj_core.h)
描述在 ActiveX 拖放作業 Microsoft期間,透過剪貼簿複製的檔案屬性。
語法
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。 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中所述
ftCreationTime
類型:FILETIME
包含檔案建立時間的 FILETIME 結構。
ftLastAccessTime
類型:FILETIME
FILETIME 結構,其中包含上次存取檔案的時間。
ftLastWriteTime
類型: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 |