Call API Predicates:
To call API function, you should describe it in the GLOBAL PREDICATES section. Flow
pattern for this predicate is usually an input for all arguments.
Tables below provide information about:
types of arguments and retrieving values;
"language" statements you should use;
differences between ANSI and UNICODE in a predicate
definition under Windows 32.
Types of Arguments and Retrieving Values
Type
of argument
|
Set
or get
value
|
Code in
prolog
|
Int |
Set |
INTEGER in definition, flow
pattern I |
Char* |
Set |
STRING in definition, flow
pattern I |
Char* |
Get |
STRING in definition, flow
pattern I,
Note that you should initialize this string before call of API
predicate by str_len(Str, Len) predicate, where Len is the maximum
size of a returned string. |
Int* |
Get |
INTEGER in definition, flow
pattern - O |
Language Statements
Platform
|
Language
|
WIN16 |
Pascal |
WIN32 |
Stdcall |
OS2 |
Syscall |
ANSI and UNICODE
|
Predicate definition
|
ANSI, function "sndPlaySound" |
language stdcall as "sndPlaySoundA" |
UNICODE, function "sndPlaySound" |
language stdcall as "sndPlaySoundW" |
|