实用主义

把.Net用好用足

导航

一个解决方案对dll的引用要注意的问题

问题场景:
      如果一个项目是由多人开发的话,各人使用的操作系统不同,经常导致的是他们机器上的DLL版本也不同,在一个解决方案中的两个有依赖关系的项目中引用了不同的DLL(特别是使用了复制到本地)。
       在项目过程中使用了不同版本的组件,在一个解决方案中的两个有依赖关系的项目中引用了不同版本的DLL。
导致的现象有:
        明明项目中引用了这个DLL,但是编译器提示Proj使用了有在某个DLL中的声明但是未引用。
        两个明明相同的类型变量的赋值,编译器提示说不能做从“类型1”到“类型1”的转换。

处理办法:
       所有有依赖关系的项目务必引用相同版本的DLL。一个做法是给一个解决方案一个ComDLL的目录,把有版本问题的DLL都放入这个目录中,并加入解决方案、check in到VSS中,解决方案中所有的项目引用都引用这个目录下的DLL,这样,即使不同的系统也不会有问题了。

典型案例:
       StdOle.dll
       DataWindow.dll

posted on 2005-09-27 17:29  Render  阅读(597)  评论(0编辑  收藏  举报