You are here:Home»KB»PC»Windows Family»CD-ROM or DVD-ROM is missing in Explorer (code 39 error)
Thursday, 15 October 2009 12:12

CD-ROM or DVD-ROM is missing in Explorer (code 39 error)

Written by

You can no longer access the CD drive or the DVD drive. The problem is not hardware (ie you have tried another drive) and you still cannot see the optical drive in windows, or you can see the drive with an exclamation mark (code 39) but no mounted volume, the following should help

NB: If there are no drives at all in Drive Manager then this is likely the cause of a virus and should be treated first.

There are software utilities available

  1. devfilter.exe
  2. xp_cd_dvd_fix.vbs
  3. XP_CD-DVD-Fix.exe

Try these additional links for software if the solutions below do not work, this link is only a reference
How to Fix CD/DVD Drive Problems With 18 Freeware Tools and Scripts


Solution 1

  1. Fire up Regedit (Click Start and type regedit into the search box and click on the listing that appears in the Start menu). Note that you will get a UAC prompt (Vista or 7).
  2. Navigate to the following key:

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E965-E325-11CE-BFC1-08002BE10318}
     
  3. Click on this key and in the right pane and right-click on UpperFilters and choose Delete.

    Note An UpperFilters.bak registry entry may also appear. To delete the UpperFilters registry entry, you must click UpperFilters and not UpperFilters.bak.
     
  4. Repeat the process for the LowerFilters values.
  5. Restart computer

Solution 2

  1. The cdrom / dvdrom will probably be still referenced in the redbook and imapi serives located at:

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\(imapi/redbook)\Enum\
     
  2. registry key is probably '0' but could be 1234....
  3. delete the key with the cdrom name.
  4. reboot

 


Solution 3

If you are receiving this Code 39 error and your CD or DVD drive is missing and has a yellow exclamation mark in Device Manager,

To solve this Code 39 error, follow these instructions:

NOTE: After removing these registry keys and rebooting, it may be necessary to reinstall any CD or DVD recording applications.

1) Close all open programs


2) Click on Start, Run, and type REGEDIT and press Enter


3) Click on the plus signs (+) next to the following folders

HKEY_LOCAL_MACHINE
SYSTEM
CurrentControlSet
Control
Class
{4D36E965-E325-11CE-BFC1-08002BE10318}


4) This folder is the DVD/CD-ROM Drive Class Description in the registry. Look for any of the following names in the right hand column.

UpperFilters
LowerFilters
UpperFilters.bak
LowerFilters.bak


5) If any of the above keys shown in step 4 are listed, right-click on them and choose Delete

6) After deleting the keys, close the Registry Editor

7) Reboot your computer

8) Open My Computer and check to see if your CD or DVD drives have returned. You may also want to open Device Manager and verify that the yellow exclamation and error code on the CD or DVD drive is gone.


Solution 4

tyr installing the correct chipset drivers


Solution 5

Try this Fixit from microsoft

Your CD drive or DVD drive is missing or is not recognized by Windows or other programs


Solution 6

This is a more indepth tutorial but relavent if the summarised version above do not work.

How to properly fix filter driver problems in Windows XP

(Note: this is an article for technicians, so common technical terminology and procedures will not be spelled out.)

Most technicians are familiar with the issue where optical drives disappear from My Computer, only to be found in Device Manager with an exclamation point on them, indicating a problem.

Most technicians also have no idea what filter drivers are, or how this can happen, so I'm here to explain this and show you the proper way to repair a driver whose filter chain is broken.

I've noticed that most people completely blast all of the filter drivers away until it works, and although that works, it's really not the best way to go about things, especially since the other filters might be working properly. Also, don't you want to know the why and the how? This problem can apply to more than just optical drives.

Background information

A filter driver intercepts requests/communication in order to extend or replace functionality in the driver or hardware that it is filtering. There are three types of filter that you should know about: bus filter drivers, upper filter drivers, and lower filter drivers.

A bus filter driver extends functionality (usually for proprietary features) on a bus driver, such as ACPI. An ACPI filter driver, for example, could add additional power management modes or communicate with proprietary modifications to ACPI (such as in laptops).

An upper filter driver filters data between the main driver and the application/operating system service. Microsoft's example: a keyboard filter driver could perform additional security checks before passing the data along to the application or OS/module that is receiving the data.

A lower filter driver filters data between the hardware itself and the main driver, providing extra security/stability or translating proprietary communication into a standard language for the main driver. A good example of this is when you press a button on a piece of hardware: you may have only pressed the button once, but internally, the button may have made electrical contact repeatedly within mere milliseconds, sending more than one signal when only one was intended. A filter driver can recognize that this isn't intended behavior, and can refine the data to expected specifications (it turns multiple contacts into the intended 1 contact). This way, the main driver receives a stream of cleaned/stable data, and from the end user's perspective, everything is OK. Since hardware is physical and anything can go wrong, filter drivers are quite necessary for operating system sanity.

There are two ways to install a filter driver in Windows: at the class level, and at the device level. If you install a keyboard class filter driver, EVERY keyboard you ever install will be filtered by it. If you only install it on the device level (which is done by unique device ID), then it will only filter the exact device that you put it on originally and all other devices, even in the same class, will be unaffected.

Troubleshooting

Here's the part everyone is really reading this for. How do you know when you have a filter driver problem, and how do you properly solve it?

If you go into Device Manager and see a device with an exclamation point on it (CD-ROM or not) you should not immediately try to remove and refresh it. Double-click the device so you can see the error code. If it's anything other than "the drivers aren't installed for this device", then you should click the Details tab.

Pull down the drop-down box on the Details tab and look at the following four items:

  • Device Upper Filters
  • Device Lower Filters
  • Class Upper Filters
  • Class Lower Filters

In each of these sections, there may be zero or more items. Note the name of each item in each section. They are all drivers, so they should be in %systemroot%\System32\Drivers with a .sys extension. If you investigate your CD-ROM drive's filter drivers and notice GEARAspiWDM (for example), then you should find a corresponding GEARAspiWDM.sys file in the %systemroot%\System32\Drivers folder. If you don't find a corresponding file, then you've found a broken driver chain. Your next course of action is to either find the .sys file and put it in System32\Drivers and reboot, or remove the registry entry and reboot. In most cases you'll just be removing the registry entry that is pointing to a non-existent driver.

How does this happen? If you uninstall iTunes (for instance) then it will remove the GEARAspiWDM.sys file and its filter driver entry from the registry. If you then System Restore to a date prior to this uninstallation, it may or may not put back the .sys file but it will definitely put back the registry entry, and thus the filter chain will be broken. This can happen with any device, as all are capable of hosting filter drivers above or below the main driver. Again, this is not exclusive to that well-known CD-ROM drive problem.

Removing the registry entry

If the missing file came from either of the two "Class" filter categories, drill-down in Regedit to HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Class. Hit CTRL+F and type the entry as you saw it in Device Manager (i.e., "GEARAspiWDM" — without the .sys part) and try to find it. It should quickly bring you directly to the Upper or Lower filters value that contains this driver's reference. Double click the value that it was found in (in the right-hand pane of Regedit), and remove just the line of the missing file, leaving everything else alone (specifically anything that DOES actually exist in %systemroot%\System32\Drivers). Make sure there's only one item per line and that there are no blank lines and that you are modifying the intended driver. The (Default) value of every class key should describe the class' name in English (i.e., "DVD/CD-ROM Drives")

If the missing file name came from either of the two "Device" filter categories, drill-down to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum. Hit CTRL+F and type the entry as you saw it in Device manager, etc, and remove the line in the same way as explained in the paragraph above this one. If more than one device is using this particular filter, then you will have to search again and remove it from each device.

After you've discovered and removed the offending filter driver entry from the registry, restart the computer. All should be well again at this point, if it was indeed just a filter driver problem. Try not to attempt to remove and reinstall the driver before at least rebooting first, as it should be fixed on the next system startup.


Solution 5

  1. Search HKLM for the device ID and delete all occurances (might not be necessary)
  2. Reboot
  3. If it didnt work then Search HKLM for redbook and delete all occurances of upper and lower filters (imapi and redbook) where you find redbook (should just be in the CD-ROM device keys). Do not delete the device info again.
  4. Reboot

Solution 6

also read this article How To Delete the UpperFilters and LowerFilters Registry Values.

Note: A few of the more common Device Manager error codes that are often caused by UpperFilters and LowerFilters issues include Code 19, Code 31, Code 32, Code 37, Code 39, and Code 41.

Read 902 times Last modified on Sunday, 06 May 2012 21:06