public int Exec(ref Guid pguidCmdGroup, uint nCmdId, uint nCmdexecopt, IntPtr pvaIn, IntPtr pvaOut) { if (pguidCmdGroup == CommandGroupId && CommandIds.Contains(nCmdId)) { var commandHandler = new NextIOleCommandTarget(nextCommandHandler); var result = Execute(nCmdId, nCmdexecopt, pvaIn, pvaOut, commandHandler); if (result) { return(VSConstants.S_OK); } } return(nextCommandHandler.Exec(ref pguidCmdGroup, nCmdId, nCmdexecopt, pvaIn, pvaOut)); }
protected abstract bool Execute(uint nCmdId, uint nCmdexecopt, IntPtr pvaIn, IntPtr pvaOut, NextIOleCommandTarget nextCommandTarget);