delphi 7中dll函数中的布尔参数

时间:2011-05-05 13:25:27

标签: delphi dll boolean

我有一个dll库。我已经为delphi类型排除了内存单元。

这样,函数声明的适当Boolean类型是什么?

BOOL还是其他什么?

问题在于方法签名:

function Test(Param1: BOOL; Param2: BOOL; docContent: PCharArray): Integer;

当程序离开该功能时,我得到AV。

我认为这两个第一个参数的数据类型存在问题。

1 个答案:

答案 0 :(得分:6)

BOOL适用于布尔类型。它是Windows类型,因此您将在 Windows.pas 的所有功能中看到它。

从DLL函数返回时的访问冲突通常表明您的调用约定错误 - 默认调用约定为register,但您可能需要stdcallcdecl。在声明的末尾添加它:

function Test(Param1: BOOL; Param2: BOOL; docContent: PCharArray): Integer; stdcall;