CD Change Notifications

Environment: The demo was written using Visual C++ 6.0

Getting Notification of CD-ROM Insertion or Removal:

Some Win32 applications need to know when the user inserts or removes a compact disc from a CD-ROM drive without polling for media changes. Windows NT provide a way to notify these applications through the WM_DEVICECHANGE message. This article explains how to handle the WM_DEVICECHANGE message to detect CD-ROM media changes. Furthermore is describes a way to cancel Autoplay application using the QueryCancelAutoPlay event.

Download demo project - 18 KB

Date Last Updated: April 4, 1999



Comments

  • From an ActiveX control?

    Posted by Legacy on 07/08/2003 12:00am

    Originally posted by: Mike

    How can I get the WM_DEVICECHANGE message from within an ActiveX control?

    Reply
  • To make this work in MFC is quite simple

    Posted by Legacy on 08/20/2001 12:00am

    Originally posted by: Uday A. Prabhune

    I made MFC dialog application named CDChange.
    
    The application class is CCDChangeApp.
    The dialog class is CCDChangeDlg.
    The application should stop CD autoplay as long as the application is running. For this to work following things need to be done:

    1. In the CDChangeDlg.cpp file, add-
    const UINT WM_AUTOPLAY = ::RegisterWindowMessage(_T("QueryCancelAutoPlay"));
    2. In the message map in CDChangeDlg.cpp add this
    BEGIN_MESSAGE_MAP(CCDChangeDlg, CDialog)
    //{{AFX_MSG_MAP(CCDChangeDlg)
    ...
    //}}AFX_MSG_MAP
    ON_REGISTERED_MESSAGE(WM_AUTOPLAY, OnAutoPlay)
    END_MESSAGE_MAP()
    3. In the CDChangeDlg.cpp, add the OnAutoPlay function.
    BOOL CCDChangeDlg::OnAutoPlay()
    {
    return TRUE; // Cancel autoplay
    }
    4. In the CDChangeDlg.h file, add OnAutoPlay function declaration.
    class CCDChangeDlg : public CDialog
    {
    ...
    BOOL OnAutoPlay();
    }

    That is it. When a CD is inserted, OnAutoPlay function is called which cancels the CD autoplay.

    Reply
  • how to get second cd rom notification

    Posted by Legacy on 09/19/2000 12:00am

    Originally posted by: craig

    It seems the sample works only for the first cd-rom drive. what if i have a second cd-rom attached on the system and i need to get notification about it? any suggestion is appreciated.

    Thanks.

    --Craig

    Reply
Leave a Comment
  • Your email address will not be published. All fields are required.

Top White Papers and Webcasts

  • Live Event Date: October 29, 2014 @ 11:00 a.m. ET / 8:00 a.m. PT Are you interested in building a cognitive application using the power of IBM Watson? Need a platform that provides speed and ease for rapidly deploying this application? Join Chris Madison, Watson Solution Architect, as he walks through the process of building a Watson powered application on IBM Bluemix. Chris will talk about the new Watson Services just released on IBM bluemix, but more importantly he will do a step by step cognitive …

  • Businesses are moving more and more of their customer transactions to the web. Security is understandably a top concern as online transactions increase, so it is important to make sure your electronic signature provider meets the highest security standards. That means more than simply passing a security audit or obtaining a certification. This white paper provides recommendations for taking a broader view of e-signature security, and answers key questions that help identify the security requirements against …

Most Popular Programming Stories

More for Developers

Latest Developer Headlines

RSS Feeds