There are three different types of libraries used in Windows. These
three types of libraries are defined as follows:
- Object libraries are produced by LIB.EXE, and consist of Intel
object code; for example, SWLIBC.LIB (the W implies the objects
were compiled using Windows prolog conventions).
Object libraries, which are sometimes more accurately called static
link libraries, are the libraries that contain object code. These
libraries are used at link time to resolve statically linked calls.
- DLLs (Dynamic-Link Libraries) are produced by IMPLIB.EXE and
LIB.EXE, and contain dynamic-link records derived from GDI.DEF,
USER.DEF, and KERNEL.DEF. They also contain the Windows startup
routine, WINSTART.OBJ, and any routines necessary to override C
run-time functions (for example, calloc and malloc); that is,
Windows-specific run-time functions.
NOTE: The term Dynamic-Link Library or DLL is usually used to
describe the actual Windows executable that implements a particular
The term import library is usually used to describe the product of
the IMPLIB utility. This library is used to resolve references to
DLL exports at the time the application is linked.
- Executable libraries are produced by the Microsoft linker program
(LINK.EXE), and use the keyword LIBRARY in the .DEF file. They contain
sharable Windows code, for example, GDI.EXE, USER.EXE, or KERNEL.EXE.
Article ID: 11509 - Last Review: October 29, 2003 - Revision: 3.0
- Microsoft Windows Software Development Kit 3.0
- Microsoft Windows Software Development Kit 3.1
Retired KB Content Disclaimer
This article was written about products for which Microsoft no longer offers support. Therefore, this article is offered "as is" and will no longer be updated.