zoukankan      html  css  js  c++  java
  • VSIX 插件右键菜单(2)

    编译项目然后发布

    // 获取当前右击的活动项目

    EnvDTE.Project activeProj = ProjectHelpers.GetActiveProject();

    // 获取 编译选项 Release / Debug

    string buildCfg = activeProj.ConfigurationManager.ActiveConfiguration.ConfigurationName;

    // 编译项目 true

    EnvDTE80.DTE2 dte2=ProjectHelpers._dte;

    dte2.Solution.SolutionBuild.BuildProject(buildCfg, activeProj.UniqueName, true);

    // 获取编译之后的BIN目录地址 (bin/debug/)

    string outDir = activeProj.ConfigurationManager.ActiveConfiguration.Properties.Item("OutputPath").Value.ToString();

    // 复制BIN目录下的文件到发布目录

    ProjectHelpers.OutPutBin(outDir);

    显示操作信息在VS的"输出"窗口

    // vs"输出"窗口标题
    string winCaption = "输出";


    // 输出窗口中的一个自定义项的标题
    string outTitle = "发布插件-消息";


    // 激活输出窗口
    if (_dte.ActiveWindow.Caption != winCaption)
    {
        _dte.Windows.Item(winCaption).Activate();
    }


    // 输出窗口添加一个自定义输出项 激活并输出信息
    EnvDTE.OutputWindowPane webPane = null;


    foreach (EnvDTE.OutputWindowPane item in _dte.ToolWindows.OutputWindow.OutputWindowPanes)
    {
        if (item.Name == outTitle)
        {
            webPane = item;
            break;
        }
    }


    // 如果该窗口已有,则继续使用之,否则增加
    if (webPane == null)
    {
        webPane = _dte.ToolWindows.OutputWindow.OutputWindowPanes.Add(outTitle);
    }


    // 清空消息 清空以前
    // if (clear)
        // webPane.Clear();


    // 激活
    webPane.Activate();


    // 输出消息 msg
    webPane.OutputString(msg);

  • 相关阅读:
    今天面试一些程序员(新,老)手的体会
    UVA 10635 Prince and Princess
    poj 2240 Arbitrage
    poj 2253 Frogger
    poj 2485 Highways
    UVA 11258 String Partition
    UVA 11151 Longest Palindrome
    poj 1125 Stockbroker Grapevine
    poj 1789 Truck History
    poj 3259 Wormholes
  • 原文地址:https://www.cnblogs.com/mirrortom/p/9281230.html
Copyright © 2011-2022 走看看