0

如何从我自己的 VSIX 扩展订阅 3rdparty 扩展的命令?比如扩展的 OnClick 事件。

4

1 回答 1

1

如果它是一个命令,您应该能够使用DTE.Events.CommandEvents[commandGuid, commandId].BeforeExecute(或AfterExecute)捕获它。( MSDN )

如果您不知道 ID 和 GUID,您可以订阅所有命令(因为两个索引器参数都是可选的),添加 ID/GUID 日志记录,然后使用您感兴趣的命令。

重要提示:
我相信您必须保留对DTE.Events.CommandEvents[commandGuid, commandId]某个地方的引用,这样它就不会被垃圾收集。否则您可能会失去订阅。

于 2013-04-02T04:21:44.677 回答