• 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);

  • 相关阅读:
    人物-作家-马克·吐温:马克·吐温
    人物-发明家-特斯拉:尼古拉·特斯拉
    视觉暂留-Info:这些神奇的“视觉暂留”动画,每一幅都让人拍案叫绝!
    视觉暂留:余晖效应/视觉暂留
    mingetty
    mesg
    md5sum
    man.conf
    man
    makemap
  • 原文地址:https://www.cnblogs.com/mirrortom/p/9281230.html
Copyright © 2020-2023  润新知