Condividi tramite


Metodo IFunctionDiscoveryNotification::OnError (functiondiscoveryapi.h)

[L'individuazione delle funzioni è disponibile per l'uso nei sistemi operativi specificati nella sezione Requisiti. Potrebbe essere modificato o non disponibile nelle versioni successive.]

Riceve errori che si verificano durante l'elaborazione asincrona delle query.

Sintassi

HRESULT OnError(
  [in] HRESULT        hr,
  [in] FDQUERYCONTEXT fdqcQueryContext,
  [in] const WCHAR    *pszProvider
);

Parametri

[in] hr

Errore di query segnalato.

[in] fdqcQueryContext

Contesto registrato per la notifica delle modifiche. Il tipo FDQUERYCONTEXT è definito come DWORDLONG.

[in] pszProvider

Nome del provider.

Valore restituito

L'implementazione del programma client del metodo OnError deve restituire uno dei valori HRESULT seguenti al chiamante.

Codice restituito Descrizione
S_OK
Metodo completato correttamente.
E_INVALIDARG
Il valore di uno dei parametri di input non è valido.

Commenti

In genere, i client si aspettano che qualsiasi errore asincrono sia irreversibile e che la query interrompa la restituzione dei risultati, ma la documentazione del provider personalizzato potrebbe indicare altrimenti per codici di errore specifici.

Non chiamare Release sull'oggetto query da questo metodo. In questo modo potrebbe verificarsi un deadlock. Se Release viene chiamato su un oggetto query da un altro thread mentre è in corso un callback, l'oggetto non verrà rilasciato fino al termine del callback.

Tutte le notifiche passate all'individuazione delle funzioni da parte dei provider vengono accodate e restituite al client uno alla sola. I callback vengono sincronizzati in modo che un client riceva una sola notifica alla volta.

Poiché è possibile eseguire altre chiamate al metodo IFunctionDiscoveryNotification in altri thread, tutte le modifiche apportate allo stato del thread durante la chiamata devono essere ripristinate prima di uscire dal metodo.

Requisiti

Requisito Valore
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2008 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione functiondiscoveryapi.h

Vedi anche

IFunctionDiscoveryNotification