DFMICS 結構 (shlobj_core.h)
包含 DFM_INVOKECOMMANDEX所使用的其他自變數。
語法
typedef struct {
DWORD cbSize;
DWORD fMask;
LPARAM lParam;
UINT idCmdFirst;
UINT idDefMax;
LPCMINVOKECOMMANDINFO pici;
IUnknown *punkSite;
} DFMICS, *PDFMICS;
成員
cbSize
類型: DWORD
這個 結構的大小,以位元組為單位。
fMask
類型: DWORD
零或下列一或多個旗標,指定如何處理 pici 所指向 CMINVOKECOMMANDINFO 或 CMINVOKECOMMANDINFOEX 結構中的數據。
CMIC_MASK_HOTKEY
dwHotKey 成員有效。
CMIC_MASK_ICON
未使用。
CMIC_MASK_FLAG_NO_UI
IContextMenu::InvokeCommand 的實作無法顯示使用者介面元素 (例如,執行命令時) 錯誤訊息。
CMIC_MASK_UNICODE
只有在 pici 指向 CMINVOKECOMMANDINFOEX 結構時才使用。 指出快捷方式功能表處理程式應該使用 lpVerbW、lpParametersW、lpTitleW 和 lpDirectoryW 成員,而不是其 ANSI 對等專案。 因為某些快捷方式功能表處理程式可能不支援 Unicode,所以您也應該在 lpVerb、 lpParameters、 lpTitleW 和 lpDirectory 成員中傳遞有效的 ANSI 字符串。
CMIC_MASK_NO_CONSOLE
如果快捷方式功能表處理程式需要建立新的進程,它通常會建立新的控制台。 設定 CMIC_MASK_NO_CONSOLE 旗標會隱藏建立新的控制台。
CMIC_MASK_FLAG_SEP_VDM
只有在參考 16 位 Windows 應用程式時,此旗標才有效。 如果設定,快捷方式指向的應用程式會在私人 Virtual DOS Machine (VDM) 中執行。 請參閱<備註>。
CMIC_MASK_ASYNCOK
IContextMenu::InvokeCommand 的實作可以啟動新的線程或進程來處理呼叫,而且不需要在叫用的函式完成時封鎖。 例如,如果動詞是 「delete」 , IContextMenu::InvokeCommand 呼叫可能會在刪除所有專案之前傳回。 由於這是諮詢,因此呼叫指定此旗標的應用程式,如果它們不熟悉叫用動詞動詞的實作,則無法保證會接受此要求。
CMIC_MASK_NOASYNC
Windows Vista 和更新版本。 IContextMenu::InvokeCommand 的實作應該是同步的,不會在完成之前傳回。 因為建議這樣做,所以呼叫指定此旗標的應用程式,如果它們不熟悉叫用的動詞命令實作,則無法保證會接受此要求。
CMIC_MASK_SHIFT_DOWN
按下SHIFT鍵。 請使用此選項,而不是輪詢自叫用動詞之後可能變更的鍵盤目前狀態。
CMIC_MASK_CONTROL_DOWN
按下 CTRL 鍵。 請使用此選項,而不是輪詢自叫用動詞之後可能變更的鍵盤目前狀態。
CMIC_MASK_FLAG_LOG_USAGE
指出 IContextMenu::InvokeCommand 的實作可能會想要追蹤針對 [最近使用的檔] 功能表等功能所叫用的專案。
CMIC_MASK_NOZONECHECKS
請勿執行區域檢查。 此旗標可讓 ShellExecuteEx 略過 IAttachmentExecute 放置的區域檢查。
CMIC_MASK_PTINVOKE
只有在 pici 指向 CMINVOKECOMMANDINFOEX 結構時才使用。 ptInvoke 成員有效。
lParam
類型: LPARAM
Null 終止字串的指標,其中包含所選單命令的其他自變數。 此成員可以是 NULL。
idCmdFirst
類型: UINT
處理程式可以針對功能表項識別元指定的最小值。
idDefMax
類型: UINT
處理程式可以針對功能表項識別元指定的最大值。
pici
類型: LPCMINVOKECOMMANDINFO
CMINVOKECOMMANDINFO 或 CMINVOKECOMMANDINFO 結構的指標。
punkSite
類型: IUnknown*
操作功能表處理程式月臺的指標。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 [僅限傳統型應用程式] |
標頭 | shlobj_core.h (包含 Shlobj.h) |