What is a DLL Dynamically Linked Library?

What is a DLL Dynamically Linked Library?


A DLL Dynamically Linked Library is a Microsoft Windows file that contains functions, small programs, or routines designed to perform a specific class of operations that are common to many programs. These library files usually have a .dll extension.

A DLL is a collection of computer functions that are not tied directly to a program or an executable when the program is created. They are called when a program is executed and calls for them. We say the library is executed by programs dynamically at run time.

The same way a library can be loaded and linked on demand at the application run time, it also can be dynamically unloaded when the code is no longer needed.

A DLL is a compiled code. When you open the file in for example Notepad, you won’t see anything meaningful, you will only see a gibberish language. That is because the code language instructions have been compiled into only computer readable code.

What is a DLL Dynamically Linked Library good for?

A DLL is a library of functions that are physically stored on your hard drive in a file with the DLL extension. This resource allows programs that call the library to use computer’s resources, such as memory, disk drive, network connection, and others. A DLL usually also handles tasks such as opening a window or saving a file.

Can a single DLL be used by more than one program?

Some DLLs are bundled with the Windows operating system and are available only for dedicated programs. Some are available for any Windows application. In general, a DLL can be used by several applications at the same time. A Windows library DLL can be shared between several applications.

Can multiple programs accessing one DLL encounter access violation?

Because libraries can be shared among programs, if two programs access it at the same time, they can theoretically collide with each other. Practically, the Windows operating system manages libraries. You can find more details about registration and unregistration of a DLL on the next page: (Un)Register a DLL library

What does the “dynamically” mean?

A static link remains constant during an execution of a program. On the other hand, a dynamic link is created by the program as needed. While the program is running, it can establish connections to the library on the fly as it needs it; therefore, the link is dynamic.

What uses a DLL Dynamically Linked Library?

In most cases a Dynamically Linked Library (DLL) is called by programs and applications.

A great advantage of using libraries is that they can be used by other DLLs as well.

Can a Dynamically Linked Library (DLL) be used as a stand-alone application?

In general, the answer is no. A Dynamically Linked Library (DLL) is a type of a program file that is used on Windows computers not as a stand-alone software package but as a collection of resources that are called from other programs.

Can a user run a DLL Dynamically Linked Library?

No, DLL is a Windows platform file that is not executable directly by a user. It is executed by a running program or an application.

What exactly does a Dynamically Linked Library DLL include?

In most cases a DLL is a library of functions or routines. However, a DLL can also contain just data.

Can a library file have extensions other than DLL?

Most DLL files have the .DLL extension but some Windows libraries, such as the Gdi32.exe, use the .EXE extension. ActiveX Controls files use the .OCX extension. Device driver files use .DRV.

DLL in .NET Framework

With the introduction of the Microsoft .NET and the .NET Framework, DLLs or dynamic libraries have been replaced by assemblies. An assembly is a logical unit of functionality that runs under the control of the .NET common language runtime (CLR). An assembly physically exists from an external view as a .dll file or as an .exe file, but internally an assembly is very different from a Microsoft Win32 DLL library.


Discuss this article or this topic in our discussion forum:
Email this article to a friend:
2 + 6 - 3 = 
How can I link to this web page?


<a href="http://www.maxi-pedia.com/what+is+DLL+Dynamically+Linked+Library" title="www.Maxi-Pedia.com: What is a DLL Dynamically Linked Library?" target="_blank">What is a DLL Dynamically Linked Library?</a>