【问题标题】:How can I get the outcome of a Build in a ReSharper Extension如何在 ReSharper 扩展中获得构建的结果
【发布时间】:2016-01-01 14:51:34
【问题描述】:

我想编写一个 ReSharper 扩展,在每次构建后执行一个操作, 所以我想我需要首先知道构建何时完成以及 了解构建是否成功

关于如何做到这一点的任何提示?

(我对扩展完全陌生) 提前致谢

【问题讨论】:

    标签: c# visual-studio resharper resharper-sdk


    【解决方案1】:

    您可以为此使用 Visual Studio 自己的事件。获取DTE 对象的实例并订阅OnBuildBeginOnBuildDone 事件。

    您可以在 Clippy ReSharper 扩展中看到这一点。它subscribes to the events,并从the call to Shell.Instance.GetComponent<DTE>() 获取DTE 实例。

    请注意,如何引用 DTE 类型非常重要 - 它是一个 COM 引用,不应作为 Embedded PIA 介绍类型引用,否则 ReSharper 的组件模型容器会将其视为与 @ 不同的类型它知道的 987654330@ 实例。相反,只需将其引用为non-PIA type

    <Reference Include="envdte, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
      <SpecificVersion>False</SpecificVersion>
      <EmbedInteropTypes>False</EmbedInteropTypes>
      <HintPath>..\..\lib\envdte.dll</HintPath>
    </Reference>
    

    【讨论】:

    • 谢谢,我会研究一下,不过我希望能更简单一些。
    猜你喜欢
    • 2020-06-11
    • 1970-01-01
    • 2015-08-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-03
    • 1970-01-01
    相关资源
    最近更新 更多