WpUQueryBlockingCallback, fonction (ws2spi.h)
La fonction WPUQueryBlockingCallback retourne un pointeur vers une fonction de rappel que le fournisseur de services doit appeler régulièrement lors de la maintenance des opérations de blocage.
Syntaxe
int WPUQueryBlockingCallback(
[in] DWORD dwCatalogEntryId,
[out] LPBLOCKINGCALLBACK *lplpfnCallback,
[out] PDWORD_PTR lpdwContext,
[out] LPINT lpErrno
);
Paramètres
[in] dwCatalogEntryId
Descripteur identifiant le fournisseur de services appelant.
[out] lplpfnCallback
Pointeur qui reçoit la fonction de rappel bloquante.
[out] lpdwContext
Pointeur qui reçoit une valeur de contexte que le fournisseur de services doit passer au rappel bloquant.
[out] lpErrno
Pointeur vers le code d’erreur.
Valeur retournée
Si aucune erreur ne se produit, WPUQueryBlockingCallback retourne zéro et stocke un pointeur vers une fonction de rappel bloquante dans lpfnCallback et une valeur de contexte associée dans lpdwContext. Sinon, elle retourne SOCKET_ERROR et un code d’erreur spécifique est disponible dans lpErrno.
Code d'erreur | Signification |
---|---|
Le paramètre lpfnCallback ou lpdwContext n’est pas une partie valide de l’espace d’adressage du processus. | |
Le paramètre dwCatalogEntryId n’est pas valide. |
Remarques
La fonction WPUQueryBlockingCallback retourne un pointeur vers une fonction de rappel dans lpfnCallback à appeler régulièrement pendant les opérations de blocage. Cette fonction retourne également une valeur de contexte dans lpdwContext à passer dans le rappel bloquant.
Dans Windows, cette fonction peut retourner null dans lpfnCallback, indiquant qu’aucun hook bloquant défini par l’utilisateur n’est installé. Dans ce cas, le fournisseur de services doit utiliser les objets de synchronisation Windows natifs pour implémenter le blocage.
LPBLOCKINGCALLBACK est défini comme suit :
typedef BOOL ( CALLBACK FAR * LPBLOCKINGCALLBACK )( DWORD dwContext );
Le rappel de blocage retourne TRUE si le fournisseur de services doit continuer à attendre la fin de l’opération de blocage. Elle retourne FALSE si l’opération de blocage a été annulée avec WSPCancelBlockingCall.
Si possible, tous les composants manquants de l’adresse ont une valeur raisonnable par défaut. Par exemple, un numéro de port manquant est égal à zéro par défaut.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | ws2spi.h |