Before you call an external routine in a DLL from ESL, you must declare the routine as either a subroutine or a function. In ESL, structures are passed to both subroutines and functions by reference.
Note: External conversion routines should not be declared. Refer to Writing Your Own Conversion Routines. for more information.
If you want to call an external routine that expects some arguments by value and some arguments by reference, you declare the routine as a function. Refer to What is a DLL? for additional information.