Condividi tramite


Metodo IUPnPService::AddCallback (upnp.h)

Il metodo AddCallback registra il callback di un'applicazione con il framework UPnP.

Sintassi

HRESULT AddCallback(
  [in] IUnknown *pUnkCallback
);

Parametri

[in] pUnkCallback

Specifica il riferimento all'interfaccia che contiene il callback da registrare. L'oggetto a cui fa riferimento pUnkCallback deve supportare l'interfaccia IUPnPServiceCallback o l'interfaccia IDispatch .

Valore restituito

Se il metodo ha esito positivo, il valore restituito viene S_OK. In caso contrario, il metodo restituisce uno dei codici di errore COM definiti in WinError.h.

Commenti

Non chiamare questo metodo dall'interno di un callback; si verifica un danneggiamento della memoria.

Se vengono registrati più callback, il framework UPnP richiama i callback in sequenza.

L'oggetto a cui fa riferimento pUnkCallback deve supportare l'interfaccia IUPnPServiceCallback o l'interfaccia IDispatch . Il metodo AddCallback esegue prima una query pUnkCallback per l'interfaccia IUPnPServiceCallback . Se questa interfaccia non è supportata, il metodo AddCallback esegue una query su pUnkCallback per l'interfaccia IDispatch . Se l'interfaccia IDispatch non è supportata, entrambi i controlli non sono riusciti e il metodo AddCallback restituisce E_FAIL.

Se è supportato solo IDispatch , l'oggetto servizio richiama il callback chiamando IDispatch::Invoke con l'ID dispatch specificato come zero, che indica il metodo predefinito. Questo metodo IDispatch predefinito viene passato agli stessi parametri del metodo IUPnPServiceCallback , ma il primo parametro passato è una stringa che indica il motivo per cui viene richiamato il callback. I valori validi sono VARIABLE_UPDATE e SERVICE_INSTANCE_DIED.

Questo metodo ha gli argomenti seguenti:

  • Motivo per cui viene richiamato il callback. Viene richiamato perché una variabile di stato è stata modificata (VARIABLE_UPDATE) o perché l'istanza del servizio non è più disponibile (SERVICE_INSTANCE_DIED).
  • Oggetto servizio per il quale viene richiamato il callback.

Se il callback viene richiamato per una modifica di una variabile di stato, al metodo vengono passati due argomenti aggiuntivi:

  • Nome della variabile modificata.
  • Nuovo valore.

Requisiti

Requisito Valore
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Nessuno supportato
Piattaforma di destinazione Windows
Intestazione upnp.h
DLL Upnp.dll

Vedi anche

IUPnPService

IUPnPServiceCallback