12.3 Common Windows Operating System Problems
12.3.4 Windows OS missing/corrupt .DLL or .VxD files
Two important types of files associated with the operating system are .DLL and .VxD files. It is important to learn what these files do and how to repair them because they are critical to the health of the system. If for some reason they get deleted or become corrupt, the system will no longer run properly.

A .VxD file is a Virtual Device Driver and is only found in the Windows 9x operating systems. These .VxD files take the place of the DEVICE= and LOADHIGH= commands for devices that are in versions of DOS. The .VxD files are protected mode drivers that allow multiple applications to access a system hardware or software resource. The "x" in .VxD stands for a particular type of driver. For example, .VDD is a display adapter driver and .VPD is a printer driver. If these .VxD files are missing or corrupt then many devices may fail. This may result in the system not being able to start up properly or not being able to start up at all. If this happens, try reloading the driver that came with the hardware or try to update the driver by downloading it from the manufacturer website.

Another file called a Dynamic-Link Library (.DLL) file can speak to the Windows core directly. These small files store subroutines that either come with the application, or are made by the programmer. Loss or corruption of .DLL files will cause an application to lock up or prevent it from loading. Windows 95 applications use the operating system as a pool of resources (such as memory, modem, video, and printer). Programs or Dynamic-Link Libraries (.DLLs) make "calls" to these modules whenever they need to place something on the screen, to check the status of the mouse, to use memory, or to gain access to anything else they might need. Problems arise when a new application is installed and updates one of the shared .DLLs, thereby creating a .DLL conflict. As a result of this conflict, older applications may not be able to handle the updated file and will fail to work.

Solutions: SFC Utility 
The Windows operating system includes many tools to help make it more stable and more dependable. One such tool is called the System File Checker (SFC). The SFC is a command-line utility that scans the operating system files to ensure that they are the correct (original Microsoft) ones. Although it is not as widespread a problem these days as it was in the past (with Windows 3.x, for instance), it is possible for some applications to replace system files (for instance, .VxD or .DLL files) with different files of the same name. This quickly brings a computer system to a state where it will not work. The operating system is no longer stable and has difficulty even booting after installing or uninstalling some applications or utilities.

SFC is a tool that allows users to scan their system and verify that the versions of protected system files are up to date. If a protected system file has moved or has disappeared, SFC automatically replaces the file with the correct version from the .DLL cache folder.

Locating/Replacing Missing or Corrupt .DLL or .VxD Files
The SFC utility scans the hard drive for damaged and missing windows files and corrects problems. This requires an available operating system CD so if there are missing files, they can be restored from the CD to the proper location on the system. This utility works in Windows 98 and Windows 2000. In Windows 2000, type SFC /scannow at a command prompt in order to execute the command. To return to the default Windows File Protection operation, type SFC /enable. In this mode, SFC automatically prompts the user to restore the correct system file version whenever it detects that an application has overwritten a file. Do not forget to enable this option before exiting the command prompt window.

Although running the SFC utility will solve the problem most of the time, many programs load their own copy in their own folder, causing the problem. In this case, there are several choices.

One example would be an error with the MFC42.dll files. First, rename any MFC42.dll files that can be found, other than those in the \system and \CABS folders from MFC42.dll to MFC42.old and reboot the computer. This can only be done from a true DOS prompt and not from Windows. If there is a problem, the name can always be changed back to the original. Do this one file at a time. If three MFC42.dll files are found, rename the first. Reboot and if the problem remains, rename the next and so on. Eventually there should be only one copy of this file in the system folder and one in the CABS folder.

If this does not fix the problem, rename the MFC42.dll file found in the system folder to MFC42.old. Then, one file at a time, copy one of the other MFC42.dll files that were found in the other folders to the c:\windows\system folder and rename it to MFC42.dll. The object is to use the other versions and see if they work. This will usually solve the problem of missing or corrupt .DLL and .VxD files.