Notifications

Notifications are values that a setup function sends to a callback routine to specify a state or event. Two parameters, Param1 and Param2, are sent with the notification, and contain additional information relevant to the notification.

The callback routine processes the notification and returns an unsigned integer to the setup function. Depending on the setup function, you can use this value may be used to specify an operation or user selection, or you may ignore it.

The setup functions send notifications to callback routines using the following syntax.

MsgHandler(          //the specified callback routine
    Context,         //context used by the callback routine
    Notification,    //notification code
    Param1,          //additional notification information
    Param2            //additional notification information
);

 

The Context parameter is a void pointer to a context variable or structure that the callback routine can use to store information that must persist between subsequent calls to the callback routine.

Because the callback routine specifies the context s implementation, and it is never referenced or altered by the setup functions, the context is not documented in the reference material for the notification messages that follow.

The Notification parameter specifies an unsigned integer value for an event or state that causes the setup function to call the callback routine.

Param1 and Param2 are optional parameters that can contain additional information relevant to the notification. These parameters are unsigned integers. If Param1 or  Param2 return information that is not an unsigned integer, it will be cast to an unsigned integer and must be recast to its original data type before it can be used by the callback routine.

 

Note  The following notifications represent every notification used by the setup functions. Individual functions will use a subset of these notifications. In other words, not every notification is used by every function.

 

The following notifications are used by the setup functions.

SPFILENOTIFY_COPYERROR7GQX77

An error occurred during a file copying operation.

SPFILENOTIFY_DELETEERRORQ5J0QN

An error occurred during a file deletion operation.

SPFILENOTIFY_ENDCOPY7CCU_QN

A file copying operation has ended.

SPFILENOTIFY_ENDDELETEVX6FWC

A file deletion operation has ended.

SPFILENOTIFY_ENDQUEUECH5FJ0

The queue has finished committing.

SPFILENOTIFY_ENDRENAMEGNWC93

A file rename operation has ended.

SPFILENOTIFY_ENDSUBQUEUE3QC.UZT

A subqueue (either copy, rename or delete) has ended.

SPFILENOTIFY_FILEEXTRACTED2RHUFBE

The file has been extracted from the cabinet.

SPFILENOTIFY_FILEINCABINET1C_WYIO

A file is encountered in the cabinet.

SPFILENOTIFY_FILEOPDELAYED1OHBW68

The file was in use, and the current operation has been delayed until the system is rebooted.

SPFILENOTIFY_LANGMISMATCHZO9YCN

The language of the current operation does not match the system language.

SPFILENOTIFY_NEEDMEDIA12KBD3A

New source media is needed.

SPFILENOTIFY_NEEDNEWCABINET50OFXJ

The current file is continued in the next cabinet.

SPFILENOTIFY_QUEUESCANHYNU_K

A node in the file queue has been scanned.

SPFILENOTIFY_RENAMEERROR40IOAS

An error occurred during a file renaming operation.

SPFILENOTIFY_STARTCOPYVV080K

A file copy operation has started.

SPFILENOTIFY_STARTDELETE6VY_8Q

A file delete operation has started.

SPFILENOTIFY_STARTQUEUETDNI4L

The queue has started to commit.

SPFILENOTIFY_STARTRENAME175.8I6

A file rename operation has started.

SPFILENOTIFY_STARTSUBQUEUE13PKOHI

A subqueue (either copy, rename or delete) has started.

SPFILENOTIFY_TARGETEXISTS18E8TZM

A copy of the specified file already exists on the target.

SPFILENOTIFY_TARGETNEWER1_BG4LY

A newer version of the specified file exists on the target.