这叫引入kernel32.dll这个动态连接库。
这个动态连接库里面包含了很多WindowsAPI函数,如果你想使用这面的函数,就需要这么引入。举个例子:
[DllImport("kernel32.dll")]
private static extern void 函数名(参数,[参数]);
函数名就是一个属于kernel32.dll里的一个函数。完了你就可以用那个函数了。

kernel32.dll调用kernel32.dll这个DLL里面的API接口!

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

首先调用这个方法之前,你需要确保你已经添加了引用命名空间:

System.Runtime.InteropServices

然后 你只需要在方法外部 调用你需要引用的dll文件即可。

一般步骤:首先,在C#语言源程序中声明外部方法,其基本形式是:

[DLLImport(“DLL文件”)]

修饰符 extern 返回变量类型 方法名称 (参数列表)

其中: DLL文件:包含定义外部方法的库文件。 修饰符: 访问修饰符,除了abstract以外在声明方法时可以使用的修饰符。 返回变量类型:在DLL文件中你需调用方法的返回变量类型。 方法名称:在DLL文件中你需调用方法的名称。 参数列表:在DLL文件中你需调用方法的列表。

[DLLImport("Iphlpapi.dll")]
    private static unsafe extern int SendARP(Int32 dest,Int32 host,ref IntPtr mac,ref IntPtr length);

注意:

DLL文件必须位于程序当前目录或系统定义的查询路径中(即:系统环境变量中Path所设置的路径)。

DllImport只能放置在方法声明上。

返回变量类型、方法名称、参数列表一定要与DLL文件中的定义相一致。
————————————————
版权声明:本文为CSDN博主「JustGoingToDo」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/lihao199611287011/article/details/82837719

最新文章

  1. URL_MODEL 2 不能访问 在APACHE服务器上的访问方式上去除index.php
  2. 据说每个大牛、小牛都应该有自己的库——DOM处理续
  3. [Eclipse]解决: Eclipse Maven “Add Dependency”搜索无结果
  4. C#的pictureBox怎样使用多张图片简单切换
  5. CentOS 6.4 32位系统 LAMP(Apache+MySQL+PHP)安装步骤
  6. 【C++基础】 类中static private public protected
  7. [ImportNew]Java线程面试题
  8. linux shell编程学习笔记(一)---通配符,元字符
  9. 解决Qt5使用SSL的“qt.network.ssl: QSslSocket: cannot resolve SSLv2_client_method”错误
  10. buffer busy waits
  11. JavaScript onConflict 处理
  12. 公众号的秘密,知道一个biz就够了
  13. js判断手机的类型
  14. 求第i个小的元素 时间复杂度O(n)
  15. c++学习笔记4,调用派生类的顺序构造和析构函数(一个)
  16. 总结ASP.NET MVC Web Application中将数据显示到View中的几种方式
  17. 45_redux_comment应用_redux版本_异步功能
  18. android开发——Android开发中的47个小知识
  19. mybatis源码分析(三)------------映射文件的解析
  20. MYSQL性能优化(3)

热门文章

  1. C语言入门第十章----结构体
  2. 洗牌利器——random.shuffle()函数
  3. CF908D 【New Year and Arbitrary Arrangement】
  4. SpringBoot下配置Druid
  5. Python压缩文件/文件夹
  6. 为spring boot 写的Controller中的rest接口配置swagger
  7. Linux centosVMware Linux集群架构LVS DR模式搭建、keepalived + LVS
  8. [经验] Java 使用 netty 框架, 向 Unity 客户端的 C# 实现通信 [1]
  9. 嵊州普及Day6T3
  10. 以及Hibernate和Mybatis区别