- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
VS2008-AddIn-开发-–-WorkspaceAddIn-实例(支持VS2010)
VS2008-AddIn-开发-–-WorkspaceAddIn-实例(支持VS2010)
VS2008 AddIn 开发 – WorkspaceAddIn 实例(支持VS2010)VS2008 AddIn 开发 – WorkspaceAddIn 实例(支持VS2010)
不知道你有没有遇到这种情况: 当要找一些以前做的代码做参考的时候,总是在文件夹里翻来翻去,光看项目名字也还是想不起来重要的代码究竟在哪个工程里。因此,自己开发个AddIn来方便进行本地的代码管理,通过添加本地的某个文件夹管理下面的所有的Solution。在AddIn里,可以快速切换Solution,不用在资源浏览器里费劲找,同时通过Tag管理可以快速过滤,方便定位想要的代码。
请猛击这里下载:
VS2008_WorkspaceAddIn
VS2010_WorkspaceAddIn
安装 AddIn,只要将 .dll 和 .AddIn 文件拷贝到下面的路径,启动VisualStudio就可以了。
VS2008: [/Documents and Settings/My Documents/Visual Studio 2008/Addins]
VS2010: [/Documents and Settings/My Documents/Visual Studio 2010/Addins]
源码下载:/detail/fangxinggood/3669102
【功能介绍】
当然也支持VS2010
Workspace的数据都将保存在AddIn.dll的同级目录下的 WorkspaceAddIn.data.xml 中,
它是通过Xml序列化/反序列化进行的存取的。这里就不详细介绍了。
接下来简单介绍一下AddIn开发:
1. 创建一个AddIn工程(Other project types –gt; Extensibility),如下图:
外接(插件)程序是一些可以为我们节省时间和精力的应用程序,可附加到 Visual Studio 集成开发环境 (IDE) 中使用。外接程序是 COM 对象,它们实现 IDTExtensibility2 接口,并通过 EnvDTE和 EnvDTE80 程序集中包含的核心自动化对象模型与 IDE 通信(EnvDTE: 支持VS2003以前的IDE, EnvDTE80:支持VS2005以后的IDE)。工具栏模型包含在 Microsoft.VisualStudio.CommandBars 中。使用到的主要对象就是DTE对象,利用它我们能编程控制在Visual Studio中的任何东西,从工具栏,装卸工具窗口,甚至编辑文件和初始化编译。
2. 实现 Connect.cs 的 OnConnection 方法
public void OnConnection(object application, ext_ConnectMode connectMode, object addInInst, ref Array custom){ // Cache the DTE and add-in instance objects _applicationObject = (DTE2)application; _addInInstance = (AddIn)addInInst; // Only execute the startup code if the connection mode is a startup mode if (connectMode == ext_ConnectMode.ext_cm_AfterStartup || connectMode == ext_ConnectMode.ext_cm_Startup) { try { // Declare variables EnvDTE80.Windows2 toolWins; object objTemp = null; // The Control ProgID for the user control string ctrlProgID = quot;WorkSpaceAddin.UI.WorkSpaceWindowquot;; string ctrlProgName = quot;WorkSpaceAddinquot;; // This guid must be unique for each different tool window,
文档评论(0)