• 手把手教你制作vs2005装饰


        如果把.net开发人员比作是行走江湖的侠客,那vs就好比是侠客手中的剑,比武的时候讲究的的一寸长,一寸强,那我们应该如何改善我们的武器呢?铁匠铺的铁匠老软早就为我们做好了准备,他在我们的武器上装了很多环,打了很多洞,我们完全可以在这些环或洞上镶嵌珠宝,让这把剑更加靓丽,也可以在这把剑上装上暗器,增加武器杀伤力,如果您自身还练就了九阳神功,配上这把倚天剑,包你很快就知道无敌真寂寞的滋味。哈哈。不胡诌了,言归正传,本文通过详细的操作步骤讲述一个装饰vs2005的故事。
        让我们打开vs2005,选择创建项目,在接下来的向导中选择项目模板:其他项目类型-扩展性-visual studio外接程序,然后给我们的大钻石起个漂亮的名字:RecentProjectCleaner。忘记说了,这个外接程序要完成的任务是在菜单的工具栏创建一个子菜单,点击这个子菜单可以呼出我们的暗器,这个暗器用来清除vs2005起始页中的最近项目列表、 第一个步骤的图示如下:
             
      然后,一路next,直到出现选择外接程序选项对话框的时候,选择如下:
          
    点击下一步,完成向导后,项目模板会自动生成的文件列表如下:
    CommandBar.resx      -----------    这个是命令栏的资源文件
    Connect.cs                 -----------    是一个继承了IDTExtensibility2, IDTCommandTarget的类,是addins的实现类
    RecentProjectCleaner.AddIn   -------------------这个是addins进行xcopy部署的配置文件,部署的时候拷贝到C:\Documents and Settings\Administrator\My Documents\Visual Studio 2005\Addins
    RecentProjectCleaner - For Testing.AddIn    -------------这个是调试运行的的测试类,在调试的时候,这个文件会自动拷贝到C:\Documents and Settings\Administrator\My Documents\Visual Studio 2005\Addins位置
    首先介绍最主要的文件Connect.cs  ,这个类包含如下的实现方法
    OnConnection  - 处理外接程序加载的时候触发
    OnDisconnection  -  在处理外接程序卸载的时候触发
    OnAddInsUpdate   -  外接程序出现更新的时候触发
    OnStartupComplete   -  外接程序加载结束时候触发
    OnBeginShutdown    -   开始卸载的时候触发
    QueryStatus      -    查询状态
    Exec    -   执行命令
    本例中,我们实现的目的是:在工具菜单上创建一个新的子菜单,点击这个菜单,能够清除启动页最近项目列表,所以我们需要做的是
    1) 在外接程序加载的时候,创建菜单
    2) 点击菜单,执行删除最近列表项的命令
    3) 卸载的时候,删除新增菜单项
    所以添加工具子菜单的代码要添加到OnConnection  中如下:
    OnConnection
    执行命令的操作添加到Exec中,
    Exec
    在程序卸载的时候,卸载菜单项
    OnDisconnection
    这样一个非常简单的vs2005addins就制作成功了,接下来您就可以将该程序部署到你的倚天剑上了,部署方法超级简单,和vs03不同的是,05支持xcopy部署,您可以将RecentProjectCleaner.AddIn和生成的RecentProjectCleaner.dll拷贝到C:\Documents and Settings\Administrator\My Documents\Visual Studio 2005\Addins,就完成了addins的部署,值得说下的是RecentProjectCleaner.AddIn,这个文件描述了vs2005应该如何认识新增的伙计,它里面定义了宿主应用程序的信息(名称,版本)和addins的信息(所在程序集,类名,加载方式),如果您想在部署后让addins立即被启用,将LoadBehavior设置为1,还有不知道是我本地项目模板的问题还是其他原因,默认创建的RecentProjectCleaner.AddIn里面的Assembly多了.dll。也就是RecentProjectCleaner.dll,这样的dll显然不存在,去掉一个.dll,就可以了
    看下部署后的效果吧:重新启动vs2005,点击工具,菜单就多了一项:RecentProjectCleaner,如图

    点击外接程序管理器,可以多了一项RecentProjectCleaner
    在菜单中点击RecentProjectCleaner,选择清除,重启vs2005,最近列表项就清除了。

    这里是源程序,这里只是一个的介绍,大家可以下载下去扩展,很好玩
    /Files/jillzhang/RecentProjectCleaner.rar
     
  • 相关阅读:
    常用: JS 获取浏览器窗口大小
    教你开发jQuery插件
    JS基础篇--JS的event.srcElement与event.target(触发事件对象)
    javascript中基本类型和引用类型的区别分析
    代码风格与文件模板
    定制外观
    安装与使用
    with as 如何工作
    面向对象进阶
    mro具体解释
  • 原文地址:https://www.cnblogs.com/jillzhang/p/905710.html
Copyright © 2020-2023  润新知