Funzione WPUQueryBlockingCallback (ws2spi.h)
La funzione WPUQueryBlockingCallback restituisce un puntatore a una funzione di callback che il provider di servizi deve richiamare periodicamente durante la manutenzione delle operazioni di blocco.
Sintassi
int WPUQueryBlockingCallback(
[in] DWORD dwCatalogEntryId,
[out] LPBLOCKINGCALLBACK *lplpfnCallback,
[out] PDWORD_PTR lpdwContext,
[out] LPINT lpErrno
);
Parametri
[in] dwCatalogEntryId
Descrittore che identifica il provider di servizi chiamante.
[out] lplpfnCallback
Puntatore che riceve la funzione di callback di blocco.
[out] lpdwContext
Puntatore che riceve un valore di contesto che il provider di servizi deve passare al callback di blocco.
[out] lpErrno
Puntatore al codice di errore.
Valore restituito
Se non si verifica alcun errore, WPUQueryBlockingCallback restituisce zero e archivia un puntatore a una funzione di callback di blocco in lpfnCallback e un valore di contesto associato in lpdwContext. In caso contrario, restituisce SOCKET_ERROR e un codice di errore specifico è disponibile in lpErrno.
Codice di errore | Significato |
---|---|
Il parametro lpfnCallback o lpdwContext non è una parte valida dello spazio degli indirizzi del processo. | |
Il parametro dwCatalogEntryId non è valido. |
Commenti
La funzione WPUQueryBlockingCallback restituisce un puntatore a una funzione di callback in lpfnCallback da richiamare periodicamente durante le operazioni di blocco. Questa funzione restituisce anche un valore di contesto in lpdwContext da passare al callback di blocco.
In Windows questa funzione può restituire null in lpfnCallback, che indica che non è installato alcun hook definito dall'utente. In questo caso, il provider di servizi deve usare gli oggetti di sincronizzazione di Windows nativi per implementare il blocco.
LPBLOCKINGCALLBACK è definito come segue:
typedef BOOL ( CALLBACK FAR * LPBLOCKINGCALLBACK )( DWORD dwContext );
Il callback di blocco restituirà TRUE se il provider di servizi continua ad attendere il completamento dell'operazione di blocco. Restituisce FALSE se l'operazione di blocco è stata annullata con WSPCancelBlockingCall.
Se possibile, i componenti mancanti dell'indirizzo verranno predefiniti a un valore ragionevole. Ad esempio, un numero di porta mancante verrà predefinito su zero.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | ws2spi.h |