Interfaz IFunctionDiscoveryNotification (functiondiscoveryapi.h)
[La detección de funciones está disponible para su uso en los sistemas operativos especificados en la sección Requisitos. Puede modificarse o no estar disponible en versiones posteriores.
El programa cliente implementa esta interfaz para admitir consultas asincrónicas y la detección de funciones llama a esta para notificar al programa cliente cuando se ha agregado o quitado una instancia de función que cumpla los parámetros de consulta.
Herencia
La interfaz IFunctionDiscoveryNotification hereda de la interfaz IUnknown . IFunctionDiscoveryNotification también tiene estos tipos de miembros:
Métodos
La interfaz IFunctionDiscoveryNotification tiene estos métodos.
IFunctionDiscoveryNotification::OnError Recibe errores que se producen durante el procesamiento asincrónico de consultas. |
IFunctionDiscoveryNotification::OnEvent Recibe eventos de adición, eliminación o actualización durante una notificación. |
IFunctionDiscoveryNotification::OnUpdate Indica que se ha agregado, quitado o cambiado una instancia de función. |
Comentarios
El programa cliente debe implementar esta interfaz para recibir notificaciones de la detección de funciones. La dirección de la implementación del programa cliente se pasa a uno de los métodos de consulta para habilitar las notificaciones de las instancias de función que cumplen los parámetros de consulta.
La detección de funciones llama al método IFunctionDiscoveryNotification::OnUpdate del programa cliente para realizar la notificación real, que se genera para una instancia de función cuando se agrega o quita.
Ejemplos
Los ejemplos que aparecen en páginas de método individuales se basan en la siguiente declaración de clase.
class CMyNotificationListener : public CFunctionDiscoveryNotificationWrapper
{
public:
CMyNotificationListener() {
m_hAddEvent = CreateEvent( NULL, FALSE, FALSE, NULL );
m_hRemoveEvent = CreateEvent( NULL, FALSE, FALSE, NULL );
m_hChangeEvent = CreateEvent( NULL, FALSE, FALSE, NULL );
}
~CMyNotificationListener() {
CloseHandle( m_hAddEvent );
CloseHandle( m_hRemoveEvent );
CloseHandle( m_hChangeEvent );
}
private:
HANDLE m_hAddEvent, m_hRemoveEvent, m_hChangeEvent;
};
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows Vista [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2008 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | functiondiscoveryapi.h |