Previous: 2.2.11. Dynamic-Link Libraries (DLL's) To the Table of Contents Next: 2.2.11.2. Using DLL's
2.2.11. Dynamic-Link Libraries (DLL's) Table of Contents 2.2.11.2. Using DLL's

- 2.2.11.1. -
Table of Contents
2. TMT Pascal Language Description
2.2. Pascal Language Structure
2.2.11. Dynamic-Link Libraries (DLL's)
2.2.11.1. About DLL's


2.2.11.1. About DLL's


Targets: OS/2, Win32


In Microsoft® Windows® and IBM© OS/2© operating systems, dynamic-link libraries (DLL) are modules that contain functions and data. A DLL is loaded at runtime by its calling modules (.EXE or DLL). When a DLL is loaded, it is mapped into the address space of the calling process.

Dynamic linking has the following advantages over static linking: A potential disadvantage to using DLLs is that the application is not self-contained; it depends on the existence of a separate DLL module. The system terminates processes using load-time dynamic linking if they require a DLL that is not found at processstartup and gives an error message to the user. The system does not terminate a process using run-time dynamic linking in this situation, but functions exported by the DLL are not available to the program.

DLLs can define two kinds of functions: exported and internal. The exported functions can be called by other modules. Internal functions can only be called from within the DLL where they are defined. Although DLLs can export data, its data is usually only used by its functions.

DLLs provide a way to modularize applications so that functionality can be updated and reused more easilly. They also help reduce memory overhead when several applications use the same functionality at the same time, because although each application gets its own copy of the data, they can share the code.

TMT Pascal Multi-target support DLLs for Win32 and OS/2 compilation targets. DLLs are not supported for MS-DOS protected mode target.


Previous: 2.2.11. Dynamic-Link Libraries (DLL's) To the Table of Contents Next: 2.2.11.2. Using DLL's
2.2.11. Dynamic-Link Libraries (DLL's) Table of Contents 2.2.11.2. Using DLL's

- 2.2.11.1. -