Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

cd-rom, TMediaPlayer, and TheBlueScreen

0 views
Skip to first unread message

michael

unread,
Dec 22, 1999, 3:00:00 AM12/22/99
to
I'm really baffled and hope someone has may have a solution.

Is there any way to trap and deal with the 'cd-rom Blue Screen'
while playing wav files with TMediaPlayer? I'm using D3 standard
and 14 scsi drives. The program, an automation player, plays wav
files 24/7 from the cdrom drives - often unattended for several hours.
The pc's are running Win98 SE.

I've managed to trap most other errors, but if a drive becomes
unreadable while MediaPlayer is playing then it's blue screen time
and the whole machine halts. Tried messing with
SetErrorMode(SEM_FAILCRITICALERRORS) but it does not help
either. Any suggestions (or condolences) would be greatly
appreciated!

michael bostic
Rochester, NY


michael

unread,
Dec 23, 1999, 3:00:00 AM12/23/99
to
On Wed, 22 Dec 1999 10:53:30 GMT, mich...@rochester.rr.com (michael)
wrote:


Found some info on MSDN, but doesn't look like something that can
be accomplished in Delphi (darn). For anyone who may be interested,
here's the fairly short MSDN article:

Q163361
HOWTO: Detecting CD-ROM Eject
Without Bluescreen

The information in this article applies to
Microsoft Win32 Device Driver Kit (DDK) Windows 95

SUMMARY
When you eject a CD-ROM disc, and an application subsequently
attempts to
access the disc, Windows '95 switches to a critical error blue
screen (in text
mode) and asks the user to put the CD-ROM back in the drive. This
article
demonstrates how a vendor can prevent the blue screen, and instead
put up a
friendlier message or ignore the error all together.

MORE INFORMATION
To avoid the blue screen and have the error failed back to the
calling application,
you must use a VSD at ring 0 to intercept I/O Requests as they go
down. The
VSD must set the IORF_QUIET_VOLTRACK bit in the I/O Request, which
tells
VolTrack to simply return an error when the wrong media (or not
media) is in the
drive instead of putting up a dialog box.

REFERENCES
Microsoft Windows '95 DDK - "IOR" documentation


Michael Winter

unread,
Dec 24, 1999, 3:00:00 AM12/24/99
to
Hi Michael,

How can I reproduce the problem? Removing the CD doesn't bluescreen my
Win98. Do I have to use a defective CD?

-Michael

michael

unread,
Dec 25, 1999, 3:00:00 AM12/25/99
to
The problem occurs when the cd is ejected or becomes unreadable
while it is being read. The application i'm writing continuously
plays large wav files from stacks of scsi cdrom drives (altho the
problem is not restricted to scsi - ide drives do it too). Try
playing some sort of large file like a wav, avi, Real, mpg, mov,
etc. While the file is playing from the cdrom drive, pop out the
disc and you'll likely see the blue screen. Other file types will
do the same thing - say during the installation of a big program
from cdrom.

In my application it's not likely the cd's will be manually ejected
while playing. The real problem is if the disc becomes unreadable -
dirt, damaged cd, flakey drive, etc. - the same blue screen appears
and when it does, windows stops everything and waits for you to press
esc or enter to continue. It appears that windows stops sending
messages to applicaitons. I've tried all sorts of things in Delphi
like watching messages, timers that time out if audio is not playing,
etc. Nothing seems to happen until after you manually clear the blue
screen at which time windows then processes any backlog of
messages.

Someone somewhere has probably addressed this problem in their
own applicaiton, but i have searched all over the net and so far
all i've found is that one microsoft knowledgebase 'Q' article
saying one needs to write a ring 0 VSD, which is way beyond
my abilities. If i can not come up with a software solution then
the next step is to invest in hardware watchdog boards and
have them auto-press the reset button when windows stops
responding. Or maybe an audio 'silence sense' (like used in
the radio automation business).

michael


On Fri, 24 Dec 1999 15:53:11 +0100, Michael Winter <win...@foni.net>
wrote:

0 new messages