Compartilhar via


Criando uma rotina de retorno de chamada de fila personalizada

Além de usar o retorno de chamada de fila padrão, você pode escrever uma rotina de retorno de chamada personalizada. Essa função deve ter o mesmo formulário que FileCallback. Isso será útil se você precisar de uma rotina de retorno de chamada para lidar com uma notificação de uma maneira diferente daquela fornecida pela rotina de retorno de chamada de fila padrão.

Se apenas uma pequena parte do comportamento da rotina de retorno de chamada de fila padrão precisar ser alterada, você poderá criar uma rotina de retorno de chamada personalizada para filtrar as notificações, tratando apenas aquelas que exigem comportamento especial e chamando SetupDefaultQueueCallback para as outras pessoas.

Por exemplo, se você quisesse manipular erros de exclusão de arquivo personalizado, poderia criar uma função de retorno de chamada personalizada, MyCallback. Essa função interceptaria e processaria SPFILENOTIFY_DELETEERROR notificações e chamaria a função de retorno de chamada de fila padrão para todas as outras notificações. MyCallback retorna um valor para as notificações de erro de exclusão. Para todas as outras notificações, MyCallback passa qualquer valor que a rotina de retorno de chamada de fila padrão retornou para a fila.

Esse fluxo de controle é ilustrado no diagrama a seguir.

setas e caixas mostrando o fluxo de dados para a função de retorno de chamada personalizada

Importante

Se a função de retorno de chamada personalizada chamar a rotina de retorno de chamada de fila padrão, ela deverá passar o ponteiro void retornado por SetupInitDefaultQueueCallback ou SetupInitDefaultQueueCallbackEx para a rotina de retorno de chamada padrão.