Windows Multimedia DDK (mddkqh.hlp) (Table of Contents; Topic list)
MM_MCINOTIFY
                                                 Contents Index Back
────────────────────────────────────────────────────────────────────────────
MM_MCINOTIFY
 
        This message is sent to a window to notify an application that
        an MCI device has completed an operation. MCI devices send this
        message only when the MCI_NOTIFY flag is used with an MCI
        command message or when the notify flag is used with an MCI
        command string.
 
Parameters
        WPARAM wParam
            Contains one of the following message:
 
            MCI_NOTIFY_ABORTED
                Specifies that the device received a command that
                prevented the current conditions for initiating the
                callback from being met. If a new command interrupts the
                 current command and it also requests notification, the
                device will send only this message and not
                MCI_NOTIFY_SUPERCEDED.
 
            MCI_NOTIFY_SUCCESSFUL
                Specifies that the conditions initiating the callback
                have been met.
 
            MCI_NOTIFY_SUPERSEDED
                Specifies that the device received another command with
                the MCI_NOTIFY flag set and the current conditions for
                initiating the callback have been superseded.
 
            MCI_NOTIFY_FAILURE
                Specifies that a device error occurred while the device
                was executing the command.
 
        LPARAM lParam
            The low-order word specifies the ID of the device
            initiating the callback.
 
Return value
        Returns zero if successful. Otherwise, it returns an MCI error
        code.
 
Comments
        A device returns the flag MCI_NOTIFY_SUCCESSFUL with
        MM_MCINOTIFY when the action for a command finishes. For
        example, an audio CD device uses this flag for notification for
        MCI_PLAY when the device finishes playing. The MCI_PLAY command
        completes successfully only when it reaches the specified end
        position or reaches the end of the media. Similarly, MCI_SEEK
        and MCI_RECORD do not return MCI_NOTIFY_SUCCESSFUL until they
        reach the specified end position or reach the end of the media.
 
        A device returns the flag MCI_NOTIFY_ABORTED with MM_MCINOTIFY
        only when it receives a command that prevents it from meeting
        the notification conditions. For example, the command MCI_PLAY
        would not abort notification for a previous play command
        provided that the new command does not change the play
        direction or change the ending position for the play command
        with an active notify. The MCI_RECORD and MCI_SEEK commands
        behave similarly.
 
        MCI also does not send MCI_NOTIFY_ABORTED when MCI_PLAY or
        MCI_RECORD is paused with MCI_PAUSE. Sending the MCI_RESUME
        command will let them continue to meet the callback conditions.
 
        When your application requests notification for a command, check
        the error return of mciSendString or mciSendCommand. If these
        functions encounter an error and return a nonzero value, MCI
        will not set notification for the command.
 
                                       -♦-