Visual Studio 2010自定义与功能扩展
2011-12-21 14:50
169 查看
我们在使用VS2010进行编码时,有时会做一些重复的工作,为了减轻这部分工作的,提高编程效率,VS2010允许你自定功能,还可以对VS的功能作一些扩展,并允许你同别人共享扩展的这部分功能。
VS 2010允许你通过以下几种方式来扩展它的功能:
1)宏
宏是扩展Visual Studio最简单的方法,比较适合快速自动操纵等任务,宏的功能比较有限,只适用于简单的自动化任务。编写宏只能采用VBA ,没有其他语言的支持,此外宏的共享需要共享项目文件(包括其源代码)。
2)Add-in(外接程序)
外接程序比宏强大,可以创建工具窗口和向导,并可以Vs2010 IDE中无缝集成。外接程序可编译成动态链接库形式加以共享,编译后的共享文件是二进制形式的
3)Visual Studio SDK开发工具包
Visual Studio SDK需要单独下载和安装,运用VS SDK,可以访问VS2010 内核,因此可以开发出比外接程序更强大的功能,甚至于可以开发出自己的的编辑器、设计工具,适合于其它开发语言的开发环境。
4)托管扩展框架组件MEF(Managed Extensibility Framework )
我们可以通过以上几种方法扩展VS 2010的基础是VS2010的自动化模型,也叫可扩展策略DTE(Development Tools Extensibility),对象模型是我们可对VS2010 IDE进行扩展开 发的基础.DTE是一个基于COM的接口,已经添加到各个版本的Visual Studio中,DTE的各个版本的接口和相关类实现已覆盖Visual Studio的各个方面的功能。
DTE相关类只是对接口的实现,就其实现本质而言,接口不支持扩展的,永远不能改变。例如,您可以找到Debugger,Debugger2,Debugger3,Debugger4,和Debugger5接口。Debugger是Visual Studio 2003的一部分,并且是最早的版本。 Debugger2是Debugger更新,位于的Visual Studio 2005,Debugger3位于Visual Studio 2008,Debugger4位于Visual Studio 2008 SP1和Debugger5应用于Visual Studio 2010。根DTE接口也有一个更新版本DTE2,你通常使用DTE2,而不是DTE。这一点在实际编程中的意思是,对象模型层次结构不简单。该模型将暴露在早期表现上的类的方法的模式,但您需要用对象较新的接口来访问它的功能。例如,解决方案对象Solution没有提供能够创建解决方案文件夹功能,直到后来Solution2其中提供了AddSolutionFolder方法。因此,下面的宏代码将不能正常工作
但是下面这段代码却可以
原文链接:http://winsystem.ctocio.com.cn/416/11585916.shtml
VS 2010允许你通过以下几种方式来扩展它的功能:
1)宏
宏是扩展Visual Studio最简单的方法,比较适合快速自动操纵等任务,宏的功能比较有限,只适用于简单的自动化任务。编写宏只能采用VBA ,没有其他语言的支持,此外宏的共享需要共享项目文件(包括其源代码)。
2)Add-in(外接程序)
外接程序比宏强大,可以创建工具窗口和向导,并可以Vs2010 IDE中无缝集成。外接程序可编译成动态链接库形式加以共享,编译后的共享文件是二进制形式的
3)Visual Studio SDK开发工具包
Visual Studio SDK需要单独下载和安装,运用VS SDK,可以访问VS2010 内核,因此可以开发出比外接程序更强大的功能,甚至于可以开发出自己的的编辑器、设计工具,适合于其它开发语言的开发环境。
4)托管扩展框架组件MEF(Managed Extensibility Framework )
我们可以通过以上几种方法扩展VS 2010的基础是VS2010的自动化模型,也叫可扩展策略DTE(Development Tools Extensibility),对象模型是我们可对VS2010 IDE进行扩展开 发的基础.DTE是一个基于COM的接口,已经添加到各个版本的Visual Studio中,DTE的各个版本的接口和相关类实现已覆盖Visual Studio的各个方面的功能。
DTE相关类只是对接口的实现,就其实现本质而言,接口不支持扩展的,永远不能改变。例如,您可以找到Debugger,Debugger2,Debugger3,Debugger4,和Debugger5接口。Debugger是Visual Studio 2003的一部分,并且是最早的版本。 Debugger2是Debugger更新,位于的Visual Studio 2005,Debugger3位于Visual Studio 2008,Debugger4位于Visual Studio 2008 SP1和Debugger5应用于Visual Studio 2010。根DTE接口也有一个更新版本DTE2,你通常使用DTE2,而不是DTE。这一点在实际编程中的意思是,对象模型层次结构不简单。该模型将暴露在早期表现上的类的方法的模式,但您需要用对象较新的接口来访问它的功能。例如,解决方案对象Solution没有提供能够创建解决方案文件夹功能,直到后来Solution2其中提供了AddSolutionFolder方法。因此,下面的宏代码将不能正常工作
以下是代码片段: Public Sub AddSolutionFolder() DTE.Solution.AddSolutionFolder("TestFolder") End Sub |
以下是代码片段: Public Sub AddSolutionFolder() Dim solution As Solution2 = DirectCast(DTE.Solution, Solution2) solution.AddSolutionFolder("TestFolder") End Sub |
相关文章推荐
- 分享 Visual Studio 2010 扩展制作的心得:基本功能篇
- Visual Studio 2010 实用功能:使用web.config发布文件替换功能
- sharepoint 2010 社区中心系统-在线问答-扩展讨论板Dicussion答复功能
- Visual Studio 2010 前端开发工具/扩展/插件推荐
- Visual Studio 2010 实用功能总结图解
- Visual Studio 2010 新功能总结(一)
- Visual Studio 2010 Ultimate敏捷功能特性(上) 推荐
- ASP.NET MVC HtmlHelper 自定义扩展分页功能
- 使用JQuery库提供的扩展功能实现自定义方法
- Visual Studio 2010提升SharePoint开发功能
- 关于在SharePoint 2013(2010)中Javascript如何实现批量批准的自定义操作功能?
- 提高效率 用好Visual Studio 2010自定义代码“.NET研究”段
- 微软Visual Studio 2010架构设计的功能应用
- Visual Studio 2010 实用功能:使用web.config发布文件替换功能
- 用C#语言在Visual Studio 2010里开发一个自定义的PowerShell Cmdlet
- T4+VSIX 打造Visual Studio 2010 中的Entity代码生成自定义工具
- 扩展GridView自定义分页功能的设计草图
- 探秘Visual Studio 2010中的灾难恢复功能
- Visual Studio 2010 新功能总结(一)
- openstack 扩展自定义功能