公司有个很陈腐的系统,代码量很大,都是Delphi 7写的,要重写是不成能的。因为Delphi 7编译出来的DLL默认的导出标记就是二进制不变的C标记。
所以,理论上任何语言都可以挪用该DLL导出的API。
值得注意的是,,在挪用导出API的时候任何语言都是操作LoadLlibrary,GetProcAddress的道理来进行挪用的。
挪用该API的输入输出参数最好要是平坦内存布局,好比C语言类型的布局体,注意布局体字段与Delphi的导出的布局体的字段长度对应一致。
公司有个很陈腐的系统,代码量很大,都是Delphi 7写的,要重写是不成能的。因为Delphi 7编译出来的DLL默认的导出标记就是二进制不变的C标记。
所以,理论上任何语言都可以挪用该DLL导出的API。
值得注意的是,,在挪用导出API的时候任何语言都是操作LoadLlibrary,GetProcAddress的道理来进行挪用的。
挪用该API的输入输出参数最好要是平坦内存布局,好比C语言类型的布局体,注意布局体字段与Delphi的导出的布局体的字段长度对应一致。