码迷,mamicode.com
首页 > 其他好文 > 详细

vsix dll缺失问题

时间:2017-07-22 00:43:04      阅读:247      评论:0      收藏:0      [点我收藏+]

标签:color   字符   安装   bsp   属性   解决方案   文件夹   安装过程   VS2010   

自己在vs2015做的代码可视化插件在只装了vs2010/2012/2013的机器打不开。
报了这个错:

未能加载文件或程序集“Microsoft.VisualStudio.Shell.14.0, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”或它的某一个依赖项。系统找不到指定的文件

检查发现是依赖了两个只有vs2015有的dll,分别是
Microsoft.VisualStudio.Shell.14.0.dll
Microsoft.VisualStudio.Shell.Immutable.14.0.dll

只要将这两个dll复制入vs低版本的  \Microsoft Visual Studio 11.0\Common7\IDE\PrivateAssemblies 类似目录中,整个插件就可以加载。

于是希望插件发布时能够安装这两个dll。

后来发现,所谓vsix不过是一个zip压缩包,vs插件安装过程只不过是把里面的内容解压到 C:\Users\me\AppData\Local\Microsoft\VisualStudio\10.0\Extensions\xxxx(插件相关的一个字符串)\ 里面,如图
技术分享
 在这里我有几点发现
1.文件原封不动来自debug目录
2.工程依赖的其他工程的dll被复制过来,说明运行时系统是可以发现到这个文件夹内部的dll并加载之的
3.resource目录下是一个我自己添加的图片资源,说明自己添加的资源也会被原封不动复制过来

于是,解决方案就是自己添加缺失的dll作为资源,于是vsix安装过后在这个文件夹就会有那些dll,运行时这些dll也会被加载

具体操作如下
1. 工程下点add ->existing item, 添加dll
技术分享
 2. dll属性页,将include in vsix设成True
技术分享
 

编译过后,vsix里面就有dll了
 




vsix dll缺失问题

标签:color   字符   安装   bsp   属性   解决方案   文件夹   安装过程   VS2010   

原文地址:http://www.cnblogs.com/dydx/p/7220121.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!