Question and Answer Database FAQ2382D.txt External function failure when passing boolean parms. Category :Windows API Platform :All Product :All 32 bit Question: Why do some external functions fail when passed a boolean parameter of True? Answer: In Delphi 3, the value "True" for data types ByteBool, WordBool, and LongBool is now represented as -1 for compatibility with Microsoft Visual Basic. Note that many compilers represent "True" as either non-zero or a positive 1. When passing values to non Visual Basic applications, you should consider using the following technique to avoid incompatibilities: LongBool(Abs(True)); When accepting boolean values from any external source, you should always test against the value "False". The following technique should always work, since the value for false is always zero: if BoolValPassed <> False then DoSomething. 7/16/98 4:31:28 PM
Last Modified: 01-SEP-99