Tag: dll

The MZ Header

The MZ, at times, noted as ZM is a magic number for the file extension .exe supporting the binary and executable formats and can be extended to new, linear as well as the portable executable formats. The initials ZM or MZ refer to the name of Mark Zbikowski who put them into the original MS-DOS exec format. In as such, having the signature was necessary to create a distinguishing difference with other .EXE files from others that were considered much simpler like the .COM and the DOS formats.

The file can be easily identified by using the ASCII string MZ found at the beginning of the file. Compared to the COM format which is executable, the MZ Header is newer and different in that it contains information on relocation which allows users to access multiple segments that can be loaded on memory addresses as well as can support executable files slightly larger than the 64Kib. The only disadvantage of the MZ Header is that it requires little memory limits which apparently can be bypassed by the use of DOS extenders.

The executable found on the MZ Header can also run efficiently from DOS as well as 9x operating systems. Other 32 bit Windows can as well execute the MZ Header by using inbuilt virtual DOS machines. However, some of the graphical modes may not be supported by the MZ Header. On the other hand, 64-bit versions of Windows cannot execute the MZ Header. However, the DOSBox, Wine, and the DOSEMU are perfect alternative ways of running the MZ executable.

Moreover, it is considered that each and every PE file has a 16-bit DOS program. Due to that, when the file starts, it opens with the .EXE header. In the past, while people used the Microsoft Windows, The Windows 1.x, 2.x as well as 3.xx operating systems, they did not only exist in similar volumes as Microsoft DOS but equally ran with an MS-DOS operating system as well. As a matter of fact, it was highly likely that users found themselves attempting to run some of the programs in windows under the DOS.

Microsoft programmers, therefore, had to ensure that all windows programs had a 16-bit DOS program found at the front of each executable windows with the ability to alert users anytime they attempted to run any program under the Windows program operating under DOS. However, it cannot be considered to be more useful these days as it was back then when users and the world as a whole were transforming from the DOS to other systems and files that came after that. Notably, back then, it was not easy to find a program that could actually bind together a DOS version with a Win32 operating under the same single binary.

Additionally, users should know that the MZ Header is commonly used for backward compatibility. Moreover, it is considered the best to run on a program that has Win32 system as compared to others as well. Moreover, users should know that the MZ signature is commonly used by the MS-DOS relocatable 16-bit under the EXE format.


Don’t forget to check our pe file info tool and our file entropy article.

{ 1 Comment }

What are dll files?

A dll is a short for dynamic link library, dll is a windows pe (portable executable) file that application writers use in software for several reasons, as dll files are widely in use in the windows operation system most of today software has between one to more dll files for the software to use, a dll file contain external function that the software can use the big advantage of using a dll file is in case of changes, instead of changing all the application the developer can change the function that need to be change and by that only replacing the dll can be the solution to the problem.

Reasons to use dll files:

  1. a dll file can be use in more then one application, like the file->save menu that windows operation system use in a lot of places.
  2. in case of a problem or error you can fix it in the dll and only update it.
  3. in case of new features you can add them to the dll and update it, this way older version that will use the new dll continue to work and new version will have the new features.

what is a dll?
Dynamic link library, or dll, is a normal pe file that the big difference from it to a normal pe file,re exe, is a small change in one bit in the structure of the file, a pe file contain a header and an external header and so on, so the big diff is a change in the header, this is from the inner structure of the dll, as you cant run it like a normal exe file you can load it in run time if it needed in your software.

There are a lot of api call that you use when developing application for the Windows operation system and a lot of the api (application programming interface) call are store in system dll files.

When there are missing dll files in the system you will get an error message that can indicate the missing required dll file name, and if your system is not crashing due to the missing dll files you can download the missing dll files from the internet or from the original installation disk and add them to the system to the right directory and from then the application will work.

Most of the service pack and software updates that the operation system and other installed software are doing are downloading new dll files that replace the old ones, some of them contains bug fix and new features to the installed application.

{ Add a Comment }