IVsUIShell.PostExecCommand(Guid, UInt32, UInt32, Object) 方法

定义

允许命令的异步执行。

public:
 int PostExecCommand(Guid % pguidCmdGroup, System::UInt32 nCmdID, System::UInt32 nCmdexecopt, System::Object ^ % pvaIn);
public int PostExecCommand (ref Guid pguidCmdGroup, uint nCmdID, uint nCmdexecopt, ref object pvaIn);
abstract member PostExecCommand : Guid * uint32 * uint32 * obj -> int
Public Function PostExecCommand (ByRef pguidCmdGroup As Guid, nCmdID As UInteger, nCmdexecopt As UInteger, ByRef pvaIn As Object) As Integer

参数

pguidCmdGroup
Guid

[in,unique]命令组的唯一标识符;可以是 null 指定标准组。 传入的所有命令都 nCmdID 必须属于指定的组 pguidCmdGroup

nCmdID
UInt32

中要执行的命令。 此命令必须属于用指定的组 pguidCmdGroup

nCmdexecopt
UInt32

中值说明对象应如何执行命令。

pvaIn
Object

[in,unique]指向包含输入参数的 VARIANTARG 结构的指针。 可以为 null

返回

Int32

如果该方法成功,则它会返回 S_OK。 如果该方法失败,则会返回错误代码。

注解

COM 签名

从 vsshell:

HRESULT IVsUIShell::PostExecCommand(  
   [in, unique] const GUID * pguidCmdGroup,  
   [in] DWORD nCmdID,  
   [in] DWORD nCmdexecopt,  
   [in, unique] VARIANT * pvaIn  
);  

若要同步执行命令,请调用 QueryService SID_SUIHostCommandDispatcher 服务的,该服务返回实现的对象 IOleCommandTarget 。 在这种情况下,环境将同步执行命令并返回。 使用 IVsUIShell.PostExecCommand 方法以异步方式执行命令。 也就是说,将命令发布到环境,但会立即将控制权返回给您。 然后,该命令稍后执行。

适用于