• dll版本号相同,提示加载dll失败


    项目结构如下图:

    Service工程调用两个Datamodel.sql中的方法,两个 Datamodel.sql中的方法分别使用了3.1.0.0版本的xxx.dll,Service工程中总是调用某一Datamodel.sql中的方法正常,别一个报错:未能加载xxx.dll...按常理两个dll的版本号相同不应该存在版本的问题,但实际的问题却就是版本号冲突。

    根据http://www.cnblogs.com/OpenCoder/archive/2010/07/29/1788297.html#2131119中的说法,service工程引用两个工程后,它们bin目录下的dll只要在Datamodel.sql中使用过便会拷贝到Service的bin目录下,不会存在service的bin目录不存在xxx.dll的情况。

    无奈之下,我查看了各Datamodel.sql的bin目录下的xxx.dll文件的属性,发现这两个同一版本的dll的文件大小竟然不一样,所以可能虽然两个dll版本号相同,其实是不同的版本。我将两个工程调用同一个xxx.dll,问题解决了。

    总结: 建议同一解决方案,或者同一项目[指一个软件项目,不是VisualStudio中所指的项目]使用的公共程序集最好放在一个文件夹,所有的引用都引用都用这个文件夹下的dll,这样就不会出现这种版本号冲突的问题了。

  • 相关阅读:
    C++ Null 指针的使用
    Canal相关
    安装调试MySql经常遇到的问题
    Mysql 常用操作
    asp.net web项目 绑定ip地址运行方式
    Nginx for windows 安装部署
    Nginx 配置文件介绍
    Nginx 代理静态网站
    RabbitMQ windows下的安装与配置
    ES kibana 常用指令
  • 原文地址:https://www.cnblogs.com/larson/p/2087966.html
Copyright © 2020-2023  润新知