Windows 95/98

Home
Windows Support Menu

 

Windows 9X Registry

Windows Cannot Find a Needed Device File

When you start Windows 98, you receive an error message telling you that Windows 98 cannot find a device file that may be needed to run Windows or a Windows-based application. Sometimes a specific file name is given.

This error message can occur for either of the following reasons:

  • A Windows virtual device driver (VxD) referenced in the System.ini file or registry is missing or damaged
  • One of the Static VxD values in the registry contains invalid data. For example, the value is blank or contains only spaces. In this case, the missing device driver is not named in the error message.

To resolve this problem, follow each step below until the error no longer occurs:

  1. If you recently removed a program or component, reinstall the program or component, then run the uninstall program if one is available. If no uninstall program is available for the program or component, contact the manufacture to obtain instructions on uninstalling.
  2. If the missing device driver has a .386 extension, disable the line referring to this device driver in the System.ini file by placing a semicolon (;) at the beginning of the line.

    For example, if the line referencing the missing device driver reads:

    Device=Example.386

    Change the line to read:

    ;Device=Example.386

  3. If the missing device driver has a .vxd extension, it is a driver designed for use with Windows 98 and is referenced in the registry. In most cases, a program or component with drivers designed for use with Windows 98 will also be listed in the Add/Remove Programs option in Control Panel. Following the instructions in step 1 should correct the problem.

If the error occurs after following the instructions in step 1, you need to locate the value that references the missing device driver in the registry, and delete that registry value.

If a specific device driver is not named in the error message, one of the Static VxD values in the registry is probably blank or contains only spaces. The Static VxD values are located in the registry keys below the following key:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD

Use Registry Editor to locate and delete any Static VxD value in the registry that contains invalid data, is blank, or contains only spaces.

When Windows 98 starts, the System.ini file and the registry are read to obtain a list of device drivers to load. When Windows 98 cannot locate a virtual device driver that it is attempting to load, an error message is generated.

Virtual device drivers are files required by various programs to communicate with your computer's hardware.

The following sample registry key contains a StaticVxD value:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\COMBUFF

The data for this StaticVxD value is "*CoMBUFF" (without the quotation marks; the quotation marks appear in the Registry Editor but are not part of the VxD name). The asterisk (*) preceding the VxD name indicates that the VxD is internal to the Vmm32.vxd file. If the VxD referenced by the StaticVxD value is not internal to the Vmm32.vxd file, its name is not preceded by an asterisk and typically has a .vxd extension.