However, if the CD-ROM does not work, refer to the next and final possibility.
If the CD-ROM does work from MS-DOS, this indicates there is a Windows corruption issue.
If you attempted the recommendations above, try booting from a Windows 98 diskette or another bootable diskette with CD-ROM drivers to see if the CD-ROM works from MS-DOS.
If the computer can boot from the disc, you are encountering a Windows driver related issue. If you attempted the recommendations above, boot from the Windows disc to see if the computer can detect and boot from the disc. Try booting a CD or bootable diskette Windows 2000, XP, Vista, 7, and later users
It's also possible that the drive is bad and needs to be replaced. If the CD-ROM drive is not in the Device Manager, the drive's cables may not be connected properly. Reboot the computer to reinstall the CD-ROM drive. If listed with a yellow exclamation mark or red X, remove the CD-ROM by highlighting the drive and pressing the delete key. Within Device Manager, verify the CD-ROM has no exclamation marks or red X's. In Windows Vista and later, click the Device Manager link on the left side of the System window. In Windows XP and earlier, click the Hardware tab and then the Device Manager button.
If, after cleaning the drive and CDs, you still get errors, it's likely the disc drive is bad. For instructions on cleaning your CDs and disc drive, see the computer cleaning page. If all but one or two discs fail, the disc drive is bad or dirty. Make sure you have tested more than one CD in the disc drive, as it may be one CD that is bad or dirty. If an application sends this request to a device that is not MMC-compliant, the CD-ROM class driver will fail the request.If a CD-ROM or DVD-ROM disc drive in your computer is not reading discs correctly, the following tips and information may help you fix the problem. The SET STREAMING request works only on an MMC-compliant device. If an application changes the spindle speed with a SET STREAMING command, a change of media does not affect the speed, unless the caller specifies a value of FALSE in the Persistent member of the CDROM_SET_STREAMING structure. If an application changes the spindle speed with a SET CD SPEED command, the device automatically returns to its default speed when the media is changed.
To send a SET STREAMING command to the device, the caller specifies a request type of CdromSetStreaming in the RequestType member of CDROM_SET_STREAMING, on input to IOCTL_CDROM_SET_SPEED. To send the SET CD SPEED command to a CD-ROM device, the caller specifies a request type of CdromSetSpeed in the RequestType member of CDROM_SET_SPEED, on input to IOCTL_CDROM_SET_SPEED. In Windows Vista, applications can instruct the CD-ROM class driver to issue one of these two commands by sending an IOCTL_CDROM_SET_SPEED request to the class driver. Version 2 of the SCSI-3 Multimedia Commands (MMC) specification defines two commands for setting the CD-ROM speed: SET CD SPEED and SET STREAMING. CD-ROM drives that spin at, for example, 16X during playback, when a speed of only 1X is required, can produce loud noise that leads to a bad user experience. For example, CD-ROM drives in media-center computers primarily perform operations, such as audio playback, that do not require speeds above 1X. Some computers do not require CD-ROM drives to operate at high speeds. You can set the CD-ROM drive to a low speed to conserve battery power.
For example, in portable computers, CD-ROM drives that spin at high speed drain the battery very quickly. It is often convenient to spin CDs at a speed that is less than the optimal spindle speed that the CD-ROM drive allows.