作为初学者来说,在C#中使用API确是一件令人头疼的问题。

在使用API之前必须知道如何在C#中使用结构、类型转换、安全/不安全代码,可控/不可控代码等许多知识。 
  一切从简单开始,就从实现一个简单的MessageBox开始。

首先打开VS.Net ,创建一个新的C#工程,并添加一个Button按钮。当这个按钮被点击,则显示一个MessageBox对话框。

即然我们需要引用外来库,所以必须导入一个Namespace:

using System.Runtime.InteropServices;

接着添加下面的代码来声明一个API:

[DllImport("User32.dll")] 
  public static extern int MessageBox(int h, string m, string c, int type);

此处DllImport属性被用来从不可控代码中调用一方法。”User32.dll”则设定了类库名。DllImport属性指定dll的位置,这个dll中包括调用的外部方法。Static修饰符则声明一个静态元素,而这个元素属于类型本身而不是上面指定的对象。extern则表示这个方法将在工程外部执行,使用DllImport导入的方法必须使用extern修饰符。 
     MessageBox 则是函数名,拥有4个参数,其返回值为数字。 
     大多数的API都能传递并返回值。

而调用API的实现,则涉及我们这次做的C#程序,我们首先实现的是Form平台的功能,以下为功能展示:

转载于:https://www.cnblogs.com/yezikai/p/4512951.html

C#(9)——API调用相关推荐

  1. Tensorflow C++ API调用Keras模型实现RGB图像语义分割

    我的实验是基于PSPNet模型实现二维图像的语义分割,下面的代码直接从得到的h5文件开始往下做... 也不知道是自己的检索能力出现了问题还是咋回事,搜遍全网都没有可以直接拿来用的语义分割代码,东拼西凑 ...

  2. novaclient的api调用流程与开发

    novaclient的api调用流程与开发 2015年07月05日 19:27:17 qiushanjushi 阅读数:3915 http://blog.csdn.net/tpiperatgod/ar ...

  3. Windows恶意软件API调用特征分析

    本文讲的是Windows恶意软件API调用特征分析, 1.背景 目标: 1)找到病毒调用概率高的API 2)找到病毒调用概率不高,但是当调用频次高的时候,是病毒概率高的API. 通常对病毒使用API的 ...

  4. WPF技术触屏上的应用系列(二): 嵌入百度地图、API调用及结合本地数据库在地图上进行自定义标点的实现...

    原文:WPF技术触屏上的应用系列(二): 嵌入百度地图.API调用及结合本地数据库在地图上进行自定义标点的实现 去年某客户单位要做个大屏触屏应用,要对档案资源进行展示之用.客户端是Window7操作系 ...

  5. saltstack一些常用模块和api调用方法

    研究可执行模块的时候,发现很多自带的模块已经很完善,可以帮助我们完成日常工作了,这里写入自己的记录操作: 1.使用salt.clien调用接口操作举例: >>> import sal ...

  6. 【Flutter】Dart 数据类型 字符串类型 ( 字符串定义 | 字符串拼接 | 字符串 API 调用 )

    文章目录 I . 字符串定义 I . 字符串拼接 III . 字符串 API 调用 IV . 字符串 Demo 示例 I . 字符串定义 使用单引号 ' ' 和 双引号 " " 都 ...

  7. 【阿里云API】 阿里云API调用的若干说明

    阿里云API 为了监控我们使用的一些阿里云产品,需要些一些脚本,定时调用这些脚本来获得相关阿里云产品的信息. ■ 概述 调用阿里云API大约分成两类方法,一个是直接从HTTP协议开始,自己根据阿里云的 ...

  8. Python 技术篇-20行代码实现微信机器人斗图功能实例演示!斗图啦官网API调用方法

    话不多说,看效果图: 先说下原理: 微信接收到你说的话,发给机器人来回复,用回复的话传参给斗图网,然后获得斗图网返回的图片,保存后把图片再发给跟你斗图的人. 斗图啦官网API调用文档 斗图啦官网 菜单 ...

  9. php 菜谱 源码,基于php的菜谱大全api调用代码实例

    代码描述:基于php的菜谱大全api调用代码实例 接口地址:http://www.juhe.cn/docs/api/id/46 PHP代码 // +-------------------------- ...

  10. 外汇汇率接口 java_基于JAVA的货币汇率api调用代码实例

    代码描述:基于JAVA的货币汇率api调用代码实例 关联数据:货币汇率 接口地址:http://www.juhe.cn/docs/api/id/23 1.[代码][Java]代码 import jav ...

最新文章

  1. 性能测试分析之带宽瓶颈的疑惑
  2. 肠道菌群机制研究及国自然课题设计专题会议
  3. zabbix历史数据mysql_处理Zabbix历史数据库办法一
  4. bootstrap快速入门_在5分钟内学习Bootstrap 4-快速入门指南
  5. MFC中开发ocx控件,html容器收不到ocx的事件Event
  6. Basic Oracle Net Services Client-Side Configuration
  7. 寻找复活节彩蛋egg huting 学习
  8. 南京南站新建的,地铁换乘这么麻烦?
  9. 95%的码农都在用的编程神器,值得一看!
  10. 浅谈CFD(constant fraction discriminator恒比鉴相器)
  11. 万年历实验报告单片机C语言,单片机电子实时时钟 万年历系统 综合实验报告下载...
  12. Android 日历自定义文本
  13. yudian温控表a1温度怎么补偿_厦门宇电yudian温控表AI-516/516P型人工智能温度调节器控制器-恩莱自动化官网...
  14. 把oracle数据导入redis,Oracle向redis数据迁移
  15. (day16)媒体查询和响应式布局
  16. Jieba分词斗罗大陆
  17. Sketch 在 mac 运行缓慢怎么办?丨使用教程
  18. 物联网卡可以应用在哪些领域
  19. 32位程序使用超过4G的内存 实例
  20. Go实战--golang中OAuth2.0的使用(使用google账号进行登陆验证)

热门文章

  1. 机器视觉:mvs相机调试
  2. python中if __name__ == '__main__'功能的解析
  3. 知乎Live上线-学深度学习我们到底在学什么
  4. 全球及中国新式茶饮行业销售价值与经营布局渠道研究报告2022版
  5. 中国互联网+政务建设发展现状及市场规模预测报告2022-2027年版
  6. tomcat8启动慢
  7. Memory Dog for Autodesk Maya
  8. 关于IE7 兼容问题
  9. 云时代架构阅读笔记十五——架构设计思维(一)
  10. 关于pipeline