ICoNtextMenu::GetCommandString 方法 (shobjidl_core.h)
取得快捷方式功能表命令的相關資訊,包括說明字串和與語言無關或 標準命令的名稱。
語法
HRESULT GetCommandString(
UINT_PTR idCmd,
UINT uType,
UINT *pReserved,
CHAR *pszName,
UINT cchMax
);
參數
idCmd
類型: UINT_PTR
功能表命令識別碼位移。
uType
類型: UINT
旗標,指定要傳回的資訊。 此參數可以有下列其中一個值。
GCS_HELPTEXTA
將 pszName 設定為包含命令解說文字的 ANSI 字串。
GCS_HELPTEXTW
將 pszName 設定為 Unicode 字串,其中包含命令的解說文字。
GCS_VALIDATEA
如果功能表項目存在,則傳回S_OK,否則傳回S_FALSE。
GCS_VALIDATEW
如果功能表項目存在,則傳回S_OK,否則傳回S_FALSE。
GCS_VERBA
將 pszName 設定為 ANSI 字串,其中包含功能表項目的語言獨立命令名稱。
GCS_VERBW
將 pszName 設定為 Unicode 字串,其中包含功能表項目的語言獨立命令名稱。
pReserved
類型: UINT*
保留的。 呼叫這個方法時,應用程式必須指定 Null ,而處理常式必須在呼叫時忽略此參數。
pszName
類型: LPSTR
要接收所擷取 Null 終止字串之緩衝區的位址。
cchMax
類型: UINT
緩衝區的大小,以字元為單位,以接收以 Null 結尾的字串。
傳回值
類型: HRESULT
如果此方法成功,則會傳回 S_OK。 否則,它會傳回 HRESULT 錯誤碼。
備註
與語言無關的命令名稱或 動詞是一個名稱,可以傳遞至 ICoNtextMenu::InvokeCommand 方法,以便應用程式啟動命令。 解說文字是 Windows 檔案總管在其狀態列中顯示之命令的描述。 在 40 個字元) 下,它應該相當簡短 (。
您可以依其標準名稱來識別數個常見的動詞,例如 開啟、 列印、 刪除和 重新命名。 用戶端可以將 pszName 所指向的字串與這些標準名稱進行比較,以檢查其在快捷方式功能表上是否存在。
即使 pszName 宣告為 LPSTR,但您必須將它轉換成 UINT_PTR ,並在 uFlags 設定為 GCS_HELPTEXTW 或 GCS_VERBW時傳回 Unicode 字串。 GCS_UNICODE 可用來作為位元遮罩來測試其包含之旗標 'W' 和 'A' 版本的 uFlags 。
規格需求
最低支援的用戶端 | Windows XP [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | shobjidl_core.h (包括 Shobjidl.h) |
Dll | Shell32.dll (4.0 版或更新版本) |