电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

在易语言中调用DLL使用说明VIP免费

在易语言中调用DLL使用说明_第1页
1/9
在易语言中调用DLL使用说明_第2页
2/9
在易语言中调用DLL使用说明_第3页
3/9
易语言中调用 DLL使用说明 基本说明 本文所描述的部分功能需易语言4.01 或以上版本支持。 “在易语言中调用 DLL”包含两方面的内容:调用 Window s 系统 API 函数;调用普通 DLL 函数。 下文用到的“调用 API”或“调用 DLL”等字眼,除非特别注明,一般都是指以上两方面之一或之和,视上下文而定。绝大多数情况下,无需明确区分调用的是系统 API 还是普通 DLL。 目前易语言只支持以stdcall 方式调用 DLL 中的导出函数。 Windows 系统 API 一般都是以stdcall 调用方式导出的,故在易语言中调用它们时通常不必考虑函数调用方式的问题。而普通 DLL 有可能导出“非 stdcall 调用方式”(比如 cdecl)的函数,调用时需要特别注意。一般而言,考虑到通用性,DLL 开发者都会选择导出以sdtcall 方式调用的函数。(支持生成 DLL 的编程语言通常都支持导出 stdcall 调用方式的函数,具体实现请参考各编程语言手册。) 特别地,在 VC 中类似如下代码导出的函数并非 stdcall 调用方式: extern "C" __declspec (dllexport) test(int a, int b) { return (a + b); } 要想该函数被易语言调用,应该按类似如下方式定义(并在.def 文本中声明导出): int WINAPI test (int a, int b) { return (a + b); } 易语言编译生成的DLL,其导出函数全部为 stdcall 调用方式,所以在易语言中调用易语言生成的DLL 不存在问题。 目前在易语言中调用 DLL 时只支持1 字节对齐的结构(自定义数据类型) 如果 DLL 命令的某个参数或参数的某个成员是结构类型(自定义数据类型),则其对齐方式必须是 1 字节对齐。Windows 系统 API 中所用到的结构都是 1 字节对齐的,故在调用 API 时不受此限制。但如果想用其它编程语言生成 DLL 供易语言调用且数据类型中包含了 1 或2 字节数据长度的成员(如字符型或短整数),就需要考虑结构的1 字节对齐。 在 VC 中,可以这样定义 1 字节对齐的结构(结构在 C/C++中称为 struct): #pragma pack (push, old_value) // 保存VC++编译器结构对齐字节数。 #pragma pack (1) // 设置为以一字节对齐。 struct xxx { byte a; int b; double c; }; #pragma pack (pop, old_value) // 恢复VC++编译器结构对齐字节数。 在Delphi 中,可以这样定义1 字节对齐的结构(结构在Delphi 中称为record): type xx...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

在易语言中调用DLL使用说明

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部