zoukankan      html  css  js  c++  java
  • DllImport

    背景

    这应该是在做一个短信猫的调用时遇到的,因为c#是托管语言,就是会编译成中间语言,它调用托管dll只需引用即可,但是对于非托管,例如win32的dll那就需要这个操作了。写到这里,也想起当时调用短信猫的事情,不知为何,短信猫经常死住,后来我改为了延时发送的方法,效果还算可以,不过过去好久了,不知如何了。

    正确做法应该是采取队列方式合适,把要发送的短信放在一个队列里,或者表里,然后循环队列的数据发送,只要失败就继续发送。

    知识点

    DllImport是用来将特性化方法由非托管动态链接库 (DLL) 作为静态入口点公开

    从以上语句我们可以理解出三点:
    1.C++编写的非托管dll可以通过DllImport引入到C#中;
    2.引入到C#中的只能是C++方法(或者说函数),而不能是数据(或者说变量);
    3.引入到C#中后只能声明为静态函数; 

    DllImport会按照顺序自动去寻找的地方: 1、exe所在目录 2、System32目录 3、环境变量目录所以只需要你把引用的DLL 拷贝到这三个目录下 就可以不用写路径了 

  • 相关阅读:
    作业要求 20201022-1 每周例行报告
    作业要求 20201015-3 每周例行报告
    20201008-1 每周例行报告
    20200924-1 每周例行报告
    总结
    20201126-1 每周例行报告
    20201120-1 每周例行报告
    20201112-1 每周例行报告
    20201105-1 每周例行报告
    20201029-1 每周例行报告
  • 原文地址:https://www.cnblogs.com/sddychj/p/6762833.html
Copyright © 2011-2022 走看看