Delphi自带的编译器可以使用-JPHNE参数从.pas文件输出C/C++头文件。
虽然这在理论上是可行的,但许多Delphi DLL将使用像寄存器这样的调用约定,在标准C方式中不要打包记录等。此外还有RTL问题、协处理器状态字问题等。
可能大多数C编译器可以通过添加一些pragma来解决这个问题,但我怀疑整个Java绑定的东西是否能够解决这个问题。
因此,除非DLL是根据这个考虑而制作的,否则这可能会更多地起到反效果。
不过,阅读和解析Delphi头文件并不那么困难。Pascal比C更容易解析和转换。FPC(Free Pascal)有一个Pascal解析器包,用于其文档工具,可能是可重定向的。