Creazione di una routine di callback della coda personalizzata
Oltre a usare il callback della coda predefinito, è possibile scrivere una routine di callback personalizzata. Questa funzione deve avere lo stesso formato di FileCallback. Ciò è utile se hai bisogno di una routine di callback per gestire una notifica in modo diverso rispetto alla routine predefinita di callback della coda.
Se è necessario modificare solo una piccola parte del comportamento predefinito della routine di callback della coda, è possibile creare una routine di callback personalizzata per filtrare le notifiche, gestendo solo quelle che richiedono un comportamento speciale e chiamando SetupDefaultQueueCallback per gli altri.
Ad esempio, se si vogliono gestire errori di eliminazione di file personalizzati, è possibile creare una funzione di callback personalizzata, MyCallback. Questa funzione intercetta ed elabora le notifiche SPFILENOTIFY_DELETEERROR e chiama la funzione di callback della coda predefinita per tutte le altre notifiche. MyCallback restituisce un valore per le notifiche di errore relative all'eliminazione. Per tutte le altre notifiche, MyCallback passa qualsiasi valore restituito alla coda dalla routine di callback della coda predefinita.
Questo flusso di controllo è illustrato nel diagramma seguente.
Importante
Se la funzione di callback personalizzata chiama la routine di callback della coda predefinita, il puntatore void restituito da SetupInitDefaultQueueCallback, o da SetupInitDefaultQueueCallbackEx, deve essere passato alla routine di callback predefinita.