we have the following bug report
16928 "no disk in the drive" reply to World | Save As (and other places)

"On a clean Pharo4.0 #40618 image, on Windows 7
World Menu | Save As brings up a modal alert window, "There is no disk in the drive. Please insert a disk into drive <etc>"

On my system, it does this 4 times. 

I'm assuming that each instance refers to one of the card-reader drives which are attached, but without a card inserted.

This is a pain to deal with every single time a File Browser or World | Save As dialog is opened.

Could the alerts either be
 - only raised when that specific drive is requested by a user action
or, less preferably
 - given by a non-modal window, and fading away after a period"

I was able to reproduce this error on squeaks and pharos window vm.
(insert a usb card reader, with card, wait some time , remove only the card,
every access on this drive, for example open a FileList and scroll to the drive letter).


The solution I found is to call SetErrorMode(SEM_FAILCRITICALERRORS)

I would like to propose the following change to sqwin32directory.c
wrap the call to FindFirstFileW/FindNextFileW with

UINT prevMode = SetErrorMode(SEM_FAILCRITICALERRORS);
call   FindFirstFileW/FindNextFileW
SetErrorMode(prevMode);

...

and call this functions in at least dir_lookup()
(the other file/directory methods are save).

Alternative solution, we could call the SetErrorMode function once at program start
but I don't know if there are other "useful" errors message that we don't want to disable.

I tested both solution, both seems to work fine.

What do you think?