自己动手编写一个VS插件(四)——创建工具栏之二
2014-03-06 15:10
567 查看
作者:朱金灿
来源:http://blog.csdn.net/clever101
上次我们提到SatelliteDllName和SatelliteDllPath这两个注册表项。VS插件中所用到的资源如工具栏按钮之类的单独放在一个dll内,代码逻辑实现放在另一个dll,一般的命令惯例为代码逻辑实现的动态库为Logic.dll,资源动态库为LogicUI.dll。SatelliteDllName就是是指定VS插件中所用到资源dll的名字,SatelliteDllPath则是指定寻找资源dll的基本路径。寻找资源dll依照以下顺序来进行:
1. 查找SatelliteDllPath\shell UI locale\SatelliteDllName是否存在
2. 假如失败,寻找SatelliteDllPath\ User's preferred OS Locale \SatelliteDllName是否存在
3. 假如失败,寻找SatelliteDllPath\ User's setup OS Locale \SatelliteDllName是否存在
4. 假如失败,寻找SatelliteDllPath\ 1033 \SatelliteDllName是否存在
5. 假如失败,寻找SatelliteDllPath \SatelliteDllName是否存在
一般我们习惯在插件输出目录下新建一个1033的文件夹,资源dll就放在这个1033文件夹下。前面我们已经新建了DevHelper工程,下面我们就新建一个DevHelperUI工程作为它的资源dll。
1. 新建一个DevHelperUI的Win 32项目
2.单击下一步,如下图
3. 类型选择DLL,附加选项为空项目,单击完成,如下图:
4.输出路径设置输出到1033文件夹下,如下图:
5. 将所需的资源添加到工程下,如下图:
未完待续,敬请继续关注!
参考文献:
Add-In Registration
Visual Studio Add-ins with Icons Made Easy
来源:http://blog.csdn.net/clever101
上次我们提到SatelliteDllName和SatelliteDllPath这两个注册表项。VS插件中所用到的资源如工具栏按钮之类的单独放在一个dll内,代码逻辑实现放在另一个dll,一般的命令惯例为代码逻辑实现的动态库为Logic.dll,资源动态库为LogicUI.dll。SatelliteDllName就是是指定VS插件中所用到资源dll的名字,SatelliteDllPath则是指定寻找资源dll的基本路径。寻找资源dll依照以下顺序来进行:
1. 查找SatelliteDllPath\shell UI locale\SatelliteDllName是否存在
2. 假如失败,寻找SatelliteDllPath\ User's preferred OS Locale \SatelliteDllName是否存在
3. 假如失败,寻找SatelliteDllPath\ User's setup OS Locale \SatelliteDllName是否存在
4. 假如失败,寻找SatelliteDllPath\ 1033 \SatelliteDllName是否存在
5. 假如失败,寻找SatelliteDllPath \SatelliteDllName是否存在
一般我们习惯在插件输出目录下新建一个1033的文件夹,资源dll就放在这个1033文件夹下。前面我们已经新建了DevHelper工程,下面我们就新建一个DevHelperUI工程作为它的资源dll。
1. 新建一个DevHelperUI的Win 32项目
2.单击下一步,如下图
3. 类型选择DLL,附加选项为空项目,单击完成,如下图:
4.输出路径设置输出到1033文件夹下,如下图:
5. 将所需的资源添加到工程下,如下图:
未完待续,敬请继续关注!
参考文献:
Add-In Registration
Visual Studio Add-ins with Icons Made Easy
相关文章推荐
- C++编程问题--注意指针参数的传递
- intent.putExtra()方法参数详解
- 图文解释XCode常用快捷键的使用
- 47. Permutations II&8.8Permutations with Duplicates
- memcache基本方法
- 搞IOS7SDK的UI适配工作
- 查询当前用户能访问哪些数据库
- float和double变量的内存布局~~~~~~
- Robotium自动化测试利用InstrumentationTestRunner和XmlSerializer导出xml报告到手机里
- 自己动手编写一个VS插件(三)——创建工具栏之一
- 详细剖析GET/POST提交如何编码以及服务器如何解码以及乱码解决方案
- C#&JQuery非缓存式无刷新临时存储数据之仿购物车功能
- [0] 解决版本冲突-使用SVN主干与分支功能
- tcpdump抓取ftp密码
- Java多线程几个例子学习
- Android平台下RFID模块测试程序
- java比较器comparator使用示例分享
- 你好
- 不可混为一谈 说说数字机顶盒与网络机顶盒
- 自己动手编写一个VS插件(二)——理解OnConnection函数