摘要: 部分dll函数是需要回调的,因此我们在托管代码中调用的时候,必须先创建回调函数,然后将该函数的指针作为参数传递给dll函数。以下以EnumWindows函数为例,演示了使用回调函数的方法:一 找到函数签名EnumWindows具有以下签名: BOOL EnumWindows(WNDENUMPROC ... 阅读全文
posted @ 2015-04-05 20:03 山峰旺旺 阅读(412) 评论(0) 推荐(0) 编辑
摘要: 在上一篇 c# 如何调用非托管函数 中介绍了调用非托管函数的简单方法,其中传递的都是简单的值类型,如uint等。本篇将介绍如何传递结构或类到非托管函数。以系统函数 GetSystemTime 为例,以下分别演示了如何传递结构和类。一 传递结构参考MSDN可以知道他的定义为:void WINAPI G... 阅读全文
posted @ 2015-04-05 19:59 山峰旺旺 阅读(507) 评论(0) 推荐(0) 编辑
摘要: 在目前的项目当中经常需要调用系统API,或者第三方的API,而这些API通常都不是基于.NET的,也就是所说的非托管函数,还好.NET为我们提供了平台调用服务,通过这个服务,就可以轻松的实现我们的需求。调用过程其实比较简单,主要分以下几个步骤:1) 找到函数的定义以及他所在的链接库(DLL文件)以系... 阅读全文
posted @ 2015-04-05 19:58 山峰旺旺 阅读(784) 评论(0) 推荐(0) 编辑