栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > .Net

Visual Studio扩展开发(VS插件)

.Net 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Visual Studio扩展开发(VS插件)

Visual Studio扩展开发
  • 前言
  • 一、工具
  • 二、VS插件目标功能
  • 二、研发步骤
    • 1.创建VSIX Project
    • 2.自定义生成VSIX描述、版本、及作者
    • 3.创建第一个command命令
    • 4.创建一个对话框类
    • 4.设置命令名称
    • 5.执行命令过程
    • 6.设计对话框、获取解决方案路径及保存路径到解决方案下的txt中
  • 总结


前言

随着安装程序的日渐增大、版本的不断增多,调试程序需要以安装目录为底,把生成带调试信息的dl拷贝到调试环境,变得越来越混乱,同时研发人员对Visual Studio的个性化需求也不断增加,因此有必要开发一些VS插件(*.vsix),用于解决这些问题,以提高研发效率。


一、工具

1、VS2019

2、工具负荷两个(SDK)
a、Visual Studio 扩展开发
b、.NET桌面开发

二、VS插件目标功能

使用VS快捷键,直接调出一个对话框,对话框可完成保持一个路径到解决方案下的txt文件中。

二、研发步骤 1.创建VSIX Project


根据需要创建自己的项目名称、项目路径以及解决方案。
注意:此处的项目名与最后插件上的命令按钮名称无关。

2.自定义生成VSIX描述、版本、及作者

选择.Vsixmanifest清单文件,自行修改

3.创建第一个command命令

右键单击项目(而非解决方案)。 在上下文菜单上,选择“添加”,然后选择“新建项”
根据图中1、2、3、4步骤自定义名称。

4.创建一个对话框类

创建对话类方式与C#桌面开发程序一样,此处不再细述。

4.设置命令名称

解决方案中找到.VSCT文件
设置好后,可以直接启动调试程序,VS将会模拟启动一个VS,在工具中将可以看到自己创建的命令按钮如图

5.执行命令过程

如果所示,调试程序过程中,将在模拟vs"工具"中看到命令按钮,执行按钮后即进入步骤3创建的.cs中,如果3处

6.设计对话框、获取解决方案路径及保存路径到解决方案下的txt中

对话框
a.启动时,解决方案中显示解决方案路径
b.点击保存,解决方案路径保存到解决方案路径下的Sln.txt中

获得解决方案路径

        using EnvDTE;
        using EnvDTE80;
        using Microsoft.VisualStudio.Shell;
        using System.IO;

        private string GetSlnPath()
        {
            //ThreadHelper.ThrowIfNotOnUIThread();
            var dte2 = Package.GetGlobalService(typeof(DTE)) as DTE2;
            var solution = dte2.Solution;
            var SolutionPath = Path.GetDirectoryName(solution.FullName);//解决方案路径
            return SolutionPath;
        }

在对话框中显示

        private void Form1_Load(object sender, EventArgs e)
        {
            textBox1.Text= GetSlnPath();
        }
                

点击确定保存解决方案路径到解决方案路径下的Sln.txt中

        private void button1_Click(object sender, EventArgs e)
        {
            string sSlnPath = GetSlnPath();                           //解决方案路径
            if (sSlnPath.Substring(sSlnPath.Length - 1, 1) == "\") 
                sSlnPath.Remove(sSlnPath.Length - 1, 1);              //如果最后一位是,则删除
            string sFileName = sSlnPath + "\Sln.txt";                //拼出文件全路径

            StreamWriter streamWriter = new StreamWriter(sFileName, true);
            streamWriter.Write(GetSlnPath());
            streamWriter.Close();

        }

最后启动程序看执行功能查看


总结

本文主要讲述创建VS插件的一般过程.
创建一个启动命令--------执行命令----------
本文接口仅涉及到获取解决方案路径办法.想了解其他接口,可查阅后续文章.

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1022863.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号