zoukankan      html  css  js  c++  java
  • c# winform程序调用托管dll(c#的dll),使用"添加引用"和动态加载dll

    1. dll要强名.

    2. winform程序要添加引用dll(自动获得dll的函数调用定义),"复制本地"属性设false,因为下一步会动态加载dll,所以"复制本地"属性设true也没有意义,反而在程序目录增加一个dll文件,混淆视听.

    3. winform程序增加配置文件app.config,内容如下:

    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
      <runtime>
        <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
          <!--固定值urn:schemas-microsoft-com:asm.v1-->
          <dependentAssembly>
            <assemblyIdentity name="chengxuji"
                              publicKeyToken="ef1fe3591431fbcc"
                              />
                                <!--chengxuji程序集名,ef1fe3591431fbcc公钥标记(需强名,在GAC中注册后就有了)-->
            <codeBase version="1.0.0.0" href="1\\chengxuji.dll"/>
                                  <!--1.0.0.0版本要一致,..\\chengxuji.dll程序集目录(相对本程序运行目录)-->
          </dependentAssembly>
        </assemblyBinding>
      </runtime>
    </configuration>

    这样就可以动态加载dll了,

    1.用了引用,不用自己定义dll函数说明.

    2.动态加载dll,可用相对目录,上级目录也可以,方便多系统共用同一个dll.即exe和dll不在同一目录.

     最近找到了一个更方便的做法,不需要强名和版本,这是网址http://www.cnblogs.com/heimark/archive/2010/10/14/1851032.html

  • 相关阅读:
    用jmeter通过ssl验证访问https
    github jekyll主题
    JMeter中返回Json数据的处理方法
    使用Nginx实现反向代理
    Antd 表格 -- 自定义合并行处理
    Go语言--第8章 包(package)
    GO语言 -- 第7章 接口(INTEFACE)
    GO语言--第6章 结构体
    PHP--相关扩展安装
    Go语言--第5章 函数
  • 原文地址:https://www.cnblogs.com/heimark/p/1800494.html
Copyright © 2011-2022 走看看