<P> Like static libraries, import libraries for DLLs are noted by the . lib file extension . For example, kernel32. dll, the primary dynamic library for Windows' base functions such as file creation and memory management, is linked via kernel32. lib . </P> <P> Linking to dynamic libraries is usually handled by linking to an import library when building or linking to create an executable file . The created executable then contains an import address table (IAT) by which all DLL function calls are referenced (each referenced DLL function contains its own entry in the IAT). At run - time, the IAT is filled with appropriate addresses that point directly to a function in the separately loaded DLL . </P> <P> Each function exported by a DLL is identified by a numeric ordinal and optionally a name . Likewise, functions can be imported from a DLL either by ordinal or by name . The ordinal represents the position of the function's address pointer in the DLL Export Address table . It is common for internal functions to be exported by ordinal only . For most Windows API functions only the names are preserved across different Windows releases; the ordinals are subject to change . Thus, one cannot reliably import Windows API functions by their ordinals . </P> <P> Importing functions by ordinal provides only slightly better performance than importing them by name: export tables of DLLs are ordered by name, so a binary search can be used to find a function . The index of the found name is then used to look up the ordinal in the Export Ordinal table . In 16 - bit Windows, the name table was not sorted, so the name lookup overhead was much more noticeable . </P>

Where is dynamic link library located in windows 10