描述
查询对象以查看用户界面事件生成的一个或多个命令的状态。
C++ 语法
HRESULT QueryStatus( const GUID *pguidCmdGroup, ULONG cCmds, OLECMD *prgCmds, OLECMDTEXT *pCmdText ); |
PowerBASIC 语法
METHOD QueryStatus( _ BYREF pguidCmdGroup AS GUID, _ BYVAL cCmds AS DWORD, _ BYREF prgCmds AS LONG, _ BYREF pCmdText AS LONG _ ) AS LONG |
参数
pguidCmdGroup |
[in]命令组的唯一标识符;可以为NULL指定标准组。在prgCmds数组中传递的所有命令必须属于pguidCmdGroup指定的组。 |
cCmds |
[in]prgCmds数组中的命令数。 |
prgCmds |
[in,out]一个调用者分配的OLECMD结构数组,表示调用者需要状态信息的命令。此方法使用从OLECMDF枚举取得的值填充每个结构的cmdf成员。 |
pCmdText |
[in,out]指向OLECMDTEXT结构的指针,用于返回单个命令的名称和/或状态信息。可以为NULL表示呼叫者不需要此信息。 |
OBJRESULT
此方法支持标准返回值E_FAIL和E_UNEXPECTED,以及以下内容:
S_OK |
任何可选字符串的命令状态都已成功返回。 |
E_POINTER |
prgCmds参数为NULL。 |
OLECMDERR_E_UNKNOWNGROUP |
pguidCmdGroup参数不为NULL,但不指定识别的命令组。 |
备注
来电者使用QueryStatus来确定目标对象支持哪些命令。然后,呼叫者可以禁用否则将路由到对象的不可用命令。调用方也可以使用此方法获取单个命令的名称或状态。
调用注意事项
调用者在prgCmds中传递OLECMD中的OLECMD结构数组,其中描述了pguidCmdGroup中指定的组中感兴趣的命令,其中每个结构的cmdID设置为命令标识符,并且cmdf在字段设置为零。


