CEEPLDE — load DLL
The CEEPLDE routine invokes the Language Environment multi-level load routine CEEPLOD2, which supports loading a routine from a data set or the UNIX file system. This support causes the writable static area (WSA) for the DLL to be obtained and initialized; it also returns a dll_token to represent the DLL on future requests. Note that the user of the dll_token should not make any assumptions about the content of the token.
Note:
- Usage by System Programmer C (SPC) is not supported.
- Error diagnostics are available through the Language Environment® DLL Failure (CEEDLLF) control block chain.
Syntax
void CEEPLDE (dll_name, dll_name_length, dll_token,
[fc])
CHARn *dll_name;
INIT4 *dll_name_length;
TOKEN *dll_token;
FEED_BACK *fc;
- CEEPLDE
- Call this CWI interface as follows:
L R15,CEECAACELV-CEECAA(,R12) L R15,4016(,R15) BALR R14,R15
- dll_name (input)
- name of the DLL to be loaded.
- dll_name_length (input)
- length of the name of the DLL to be loaded; this length excludes any null terminator at the end of the name.
- dll_token (output)
- a 32-bit field that represents the DLL that was loaded. The dll_token must be passed to other explicit requests for this DLL, such as: query function (CEEPQDF), query variable (CEEPQDV), and free (CEEPFDE).
- fc (output/optional)
- An optional 12-byte feedback code that indicates the results of
this service. The following symbolic conditions may result from this
service:
Condition CEE000 Severity 0 Msg_No N/A Message The service completed successfully. CEE38V Severity 2 Msg_No 3359 Message The module or language list is not supported in this environment. CEE3EU Severity 3 Msg_No 3550 Message DLL dll_name does not contain a CEESTART CSECT. CEE3EV Severity 3 Msg_No 3551 Message DLL dll_name does not contain any C functions. CEE3F0 Severity 3 Msg_No 3552 Message DLL dll_name does not export any variables or functions. CEE3F1 Severity 3 Msg_No 3553 Message DLL dll_name is part of a circular list. CEE3F2 Severity 3 Msg_No 3554 Message There is not enough storage to load the DLL. CEE3FB Severity 3 Msg_No 3563 Message Attempted to load DLL dll_name while running C++ destructors. CEE3FC Severity 3 Msg_No 3564 Message DLL constructors or destructors did not complete, so DLL dll_name cannot be used. CEE3FI Severity 3 Msg_No 3570 Message The DLL name was not valid. CEE3FJ Severity 3 Msg_No 3571 Message Storage for writable static was not available for DLL dll_name.