Sending Non-String Data
An ESL program can send and receive only string data. To enable other types of data to be sent and received, two ESL APPC subroutines are provided that can be called from user-written subroutines embedded in a user-written DLL. The ESL APPC DLL routines can be used with either the automatic interface or the controlled interface. The user-written subroutines must understand the format of the data and must reformat the data into strings in order to send the data to or receive it from an ESL program.
Receiving Non-String Data
To send non-string data in an APPC conversation, your ESL program first calls a user-written send routine (in its own DLL) rather than APPCSendString to build the data buffer, doing the necessary string-to-non-string conversion. The user-written send routine then calls APPCSendDLLData to issue the APPC commands to do the send.
ESL APPC Subroutines to Send/Receive Non-String Data
Similarly, to receive non-string data, your ESL program calls a user-written get routine instead of APPCGetString. The user-written routine calls APPCGetDLLData to get a pointer to the received data, converts it to string data, and then returns it to your ESL program.
The following are the subroutines for sending and receiving non-string data:
APPCGetDLLData ( CONVERSATION_ID,
BUFFER_POINTER,
BUFFER_LENGTH );
APPCSendDLLData ( CONVERSATION_ID,
BUFFER_POINTER,
BUFFER_LENGTH,
SEND_IND,
MORE_TO_SEND );