SSMS2008插件开发(2)--Microsoft Visual Studio 2008插件开发介绍
原文:SSMS2008插件开发(2)--Microsoft Visual Studio 2008插件开发介绍
由于开发SSMS2008插件是通过VS2008进行的,有必要先介绍一下VS2008的插件开发过程。
这次的目的是在VS2008的工具菜单中增加一个菜单项“Test Menu",该菜单项实现显示“Hello World“的功能。
1、打开”新建项目“对话框。在”项目类型“中选择”其他项目类型“-->“扩展性”,在右边的“模板”中选择“Visual Studio外接程序”。在名称中输入“MySSMSAddin”。如下图:

2、确定以后,进入“插件向导”。点击下一步进入“选择编程语言”,选择“Visual C#”。
3、然后下一步进入“选择应用程序主机”,选择第1项“Microsoft Visual Studio 2008”。
4、进入下一步“外接程序的名称和说明”,这里可以输入插件名称和说明信息。
5、进入下一步“外接程序选项”。选择“是,创建工具菜单项……”和“我希望我的外接程序在宿主应用程序启动时加载”。前一个选项的作用是在工具菜单中增加一个菜单项,后一个选项的作用是VS2008启动时就加载插件。
6、进入下一步“选择帮助中的关于信息”,该选项的作用是在帮助菜单的关于功能中,显示插件的说明信息。不要选择。
7、进入下一步,单击“完成”。
运行程序,VS2008会打开一个新的VS2008,我们会发现工具菜单中多了一项“MySSMSAddin”,但点击没有任何反应。如下图:

下面,我们改变菜单的内容,并响应单击事件。
1、在“Connect.cs”的“OnConnection”方法中,找到代码“Command command = commands.AddNamedCommand2(_addInInstance,……)所在的行(77行);
2、将该行的第3个参数即第2个"MySSMSAddin"改为“Test Menu“,第3个参数表示菜单的显示文本。
3、增加响应事件。找到“Exec”方法,在“handled = true;”的上面增行一行,内容为:
System.Windows.Forms.MessageBox.Show("Hello World");
需要添加引用System.Windows.Forms.DLL
4、运行程序,发现工具菜单中的第一项已经由”MySSMSAddin“变成了”Test Menu“,点击该菜单,显示显示“Hello World”。
以上内容,是VS2008中增加插件的步骤,下一次将接着本次内容,将该插件加载到SSMS2008中。
SSMS2008插件开发(2)--Microsoft Visual Studio 2008插件开发介绍的更多相关文章
- Microsoft Visual Studio 2008 未能正确加载包“Visual Web Developer HTML Source Editor Package” | “Visual Studio HTM Editor Package”
在安装Microsoft Visual Studio 2008 后,如果Visual Studio 2008的语言版本与系统不一致时,比如:在Windows 7 English System 安装Vi ...
- 安装了SQL2005再安装SQL 2008R2,提示此计算机上安装了 Microsoft Visual Studio 2008 的早期版本和检查是否安装了 SQL Server 2005 Express 工具的解决方案
工作电脑上安装了SQL 2005, 但是客户电脑上安装的是SQL 2008R2,有时候连接他们的库调试没法连接,很不方便.然后又安装了个SQL2008 R2,期间遇到这两个问题,网上搜索了一下收到了解 ...
- SQL SERVER安装提示“安装了 Microsoft Visual Studio 2008 的早期版本
工作共遇到的问题记录: 安装Sql Server 2008 R2时提示错误:“此计算机上安装了 Microsoft Visual Studio 2008 的早期版本.请在安装 SQL Server 2 ...
- SQL2008安装提示"Microsoft visual studio 2008早期之前的版本"解决(这是我认为最简单有效的方法)
作者:冰封 日期:2013-10-18 原文地址:http://www.skywj.com/thread-9230-1-1.html 在安装SQL Server的时候提示 Microsoft visu ...
- Shortcut Collapse project or projects in the Solution Explorer Microsoft Visual Studio 2008
The standard windows keyboard shortcuts for expanding and collapsing treeviews are: Numeric Keypad * ...
- 安装SQL Server 2008R2 报错“此计算机上安装了 Microsoft Visual Studio 2008 的早期版本”解决方法
安装SQL Server 2008 R2报错“此计算机上安装了 Microsoft Visual Studio 2008 的早期版本,请在安装 SQL Server 2008 前将 VS2008 升级 ...
- sqlserver安装失败,此计算机上安装了 Microsoft Visual Studio 2008 的早期版本解决方法
安装sql server 2008 management,提示错误:此计算机上安装了 Microsoft Visual Studio 2008 的早期版本.请在安装 SQL Server 2008 前 ...
- HOW TO: Creating your MSI installer using Microsoft Visual Studio* 2008
Quote from: http://software.intel.com/en-us/articles/how-to-creating-your-msi-installer-using-visual ...
- SQL2008安装提示"Microsoft visual studio 2008早期之前的版本
打开注册表管理器(运行 --regedit 依次展开如下项目: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DevDiv 将devdiv项目导出来保存,倒出来之后可 ...
随机推荐
- PHP上传文件(学习)
<?php if(isset($_FILES['upfile'])) { if (is_uploaded_file($_FILES['upfile']['tmp_name'])){ $upfil ...
- ORDER BY RAND()
大概是因为需要研究了一下MYSQL随机样本实现.例如:离tablename表随机抽取了创纪录,我们一般的写法是:SELECT * FROM tablename ORDER BY RAND() LIMI ...
- 详细解释VB连接access几种方法数据库
在VB中,连接ACCESS数据库的方法主要有以下三种 使用ADO对象,通过编写代码訪问数据库 Connection 对象 ODBC数据源 使用ADO Data 控件高速创建数据库连接 有三种连接方法 ...
- PHP Yii框架开发——组织架构网站重构
最近一段时间在维护公司的组织架构网站(Org),旧版网站只是用了xampp简单搭建了一套环境部署在了windows机器上,代码结构相对简单. 整个架构如下: 整个架构没有用到复杂的结构,class里放 ...
- Linux经常使用的命令-权利管理命令-权利管理命令chmod
指令名字:chmod 命令英语的意图:change the permissions mode of a file 凡路径命令:/bin/chmod 语法:chmod [{ugoa}{+-=}{rwx} ...
- java.lang.reflect操作对象属性(域)的值
package reflect; import java.lang.reflect.Constructor; import java.lang.reflect.Field; import java.l ...
- [JavaScript权威指南 [笔记]
对象的比较均是引用的比较.(不可变的原始值和可变的对象引用)this返回调用这个方法的对象通过x!==x来判断x是否为NaNvar max = max_width || preferences.max ...
- Entity Framework执行Sql语句返回DataTable
Entity Framework中对外开放了数据库连接字符串,使用的时候可以直接得到这个连接字符串,然后进行相关的操作.如果在使用的过程中,发现Entity Framework中有一些满足不了的需求的 ...
- 第23章 访问者模式(Visitor Pattern)
原文 第23章 访问者模式(Visitor Pattern) 访问者模式 导读:访问者模式是我个人认为所有行为模式中最为复杂的一种模式了,这个模式可能看一遍会看不懂,我也翻了好几个例子,依然不能很好的 ...
- 判断sqlserver对象是否存在
--查看对象是否已经存在 --数据库是否存在 --if exists (select * from sys.databases where name = ’数据库名’) -- dro ...