gpt4 book ai didi

c# - Visual Studio Solution通过VS SDK获取Build后如何获取回调?

转载 作者:太空宇宙 更新时间:2023-11-03 13:13:32 24 4
gpt4 key购买 nike

我正在使用下面编写的代码..

EnvDTE.DTE dte = (EnvDTE.DTE)Marshal.GetActiveObject("VisualStudio.DTE.12.0");
dte.ExecuteCommand("File.SaveAll"); // Saving all files before building

dte.ExecuteCommand("Build.ReBuildSolution"); // Buidling solution

我只想在成功构建解决方案后才执行后续代码语句。是否定义了任何通知成功/不成功构建的回调..

最佳答案

首先,如果您正在使用扩展(加载项或程序包),请不要使用这种获取 DTE 实例的方式,因为 Marshal.GetActiveObject(...) 返回 DTE 的运行实例,如果您打开两个 VS 实例,您可能会得到错误的实例。正确的做法是:

二、看文章:HOWTO: Performing some action before or after a build from a Visual Studio macro or add-in

最好的方法是使用 IVsBuildableProjectCfg.AdviseBuildStatusCallback获取IVsBuildStatusCallback.BuildEnd的方法调用并检查 fSuccess 参数。

关于c# - Visual Studio Solution通过VS SDK获取Build后如何获取回调?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27501883/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com