Compartir a través de


Método IWiaDevMgr::RegisterEventCallbackProgram (wia_xp.h)

El método IWiaDevMgr::RegisterEventCallbackProgram registra una aplicación para recibir eventos de dispositivo. Se proporciona principalmente para la compatibilidad con versiones anteriores con aplicaciones que no se escribieron para WIA.

Sintaxis

HRESULT RegisterEventCallbackProgram(
  [in] LONG       lFlags,
  [in] BSTR       bstrDeviceID,
  [in] const GUID *pEventGUID,
  [in] BSTR       bstrCommandline,
  [in] BSTR       bstrName,
  [in] BSTR       bstrDescription,
  [in] BSTR       bstrIcon
);

Parámetros

[in] lFlags

Tipo: LONG

Especifica marcas de registro. Se puede establecer en los valores siguientes:

Marca de registro Significado
WIA_REGISTER_EVENT_CALLBACK Registrarse para el evento.
WIA_UNREGISTER_EVENT_CALLBACK Elimine el registro del evento.
WIA_SET_DEFAULT_HANDLER Establezca la aplicación como el controlador de eventos predeterminado.

[in] bstrDeviceID

Tipo: BSTR

Especifica un identificador de dispositivo. Pase NULL para registrarse para el evento en todos los dispositivos WIA.

[in] pEventGUID

Tipo: GUID const*

Especifica el evento para el que se registra la aplicación. Para obtener una lista de GUID de eventos válidos, consulte Identificadores de eventos WIA.

[in] bstrCommandline

Tipo: BSTR

Especifica una cadena que contiene el nombre de ruta de acceso completa y los argumentos de línea de comandos adecuados necesarios para invocar la aplicación. Se deben usar dos pares de comillas, por ejemplo, ""C:\Program Files\MyExe.exe" /arg1".

[in] bstrName

Tipo: BSTR

Especifica el nombre de la aplicación. Este nombre se muestra al usuario cuando varias aplicaciones se registran para el mismo evento.

[in] bstrDescription

Tipo: BSTR

Especifica la descripción de la aplicación. Esta descripción se muestra al usuario cuando varias aplicaciones se registran para el mismo evento.

[in] bstrIcon

Tipo: BSTR

Especifica el icono que representa la aplicación. El icono se muestra al usuario cuando varias aplicaciones se registran para el mismo evento. La cadena contiene el nombre de la aplicación y el índice basado en 0 del icono (puede haber más de un icono que represente la aplicación) separados por una coma. Por ejemplo, "MyApp, 0".

Valor devuelto

Tipo: HRESULT

Si este método se realiza correctamente, devuelve S_OK. De lo contrario, devuelve un código de error de HRESULT.

Comentarios

Use IWiaDevMgr::RegisterEventCallbackProgram para registrarse para eventos de dispositivo de hardware del tipo WIA_ACTION_EVENT. Cuando se produce un evento para el que se registra una aplicación, la aplicación se inicia y la información del evento se transmite a la aplicación.

Las aplicaciones usan el método EnumRegisterEventInfo para recuperar un puntero a un objeto enumerador para las propiedades de registro de eventos.

Una aplicación puede encontrar si un evento es un tipo de acción o un tipo de notificación (o ambos) examinando el valor ulFlags de una estructura WIA_DEV_CAP devuelta por la enumeración de eventos.

Los programas solo deben usar el método IWiaDevMgr::RegisterEventCallbackProgram para la compatibilidad con versiones anteriores con las aplicaciones no escritas para la arquitectura WIA. Las nuevas aplicaciones deben usar las interfaces del Modelo de objetos componentes (COM) proporcionadas por la arquitectura WIA. En concreto, deben llamar a IWiaDevMgr::RegisterEventCallbackInterface o IWiaDevMgr::RegisterEventCallbackCLSID para registrarse en eventos de dispositivo.

Normalmente, un programa de instalación o un script llama a este método. El programa de instalación o script registra la aplicación para recibir eventos de dispositivo WIA. Cuando se produce el evento, el sistema en tiempo de ejecución de WIA iniciará la aplicación.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional, Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado wia_xp.h (incluye Wia.h)
Library Wiaguid.lib
Archivo DLL Wiaservc.dll