Condividi tramite


Metodo IWiaDevMgr::RegisterEventCallbackProgram (wia_xp.h)

Il metodo IWiaDevMgr::RegisterEventCallbackProgram registra un'applicazione per ricevere gli eventi del dispositivo. Viene fornito principalmente per la compatibilità con le versioni precedenti con le applicazioni che non sono state scritte per WiA.

Sintassi

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

Parametri

[in] lFlags

Tipo: LONG

Specifica i flag di registrazione. Può essere impostato sui valori seguenti:

Flag di registrazione Significato
WIA_REGISTER_EVENT_CALLBACK Registrarsi per l'evento.
WIA_UNREGISTER_EVENT_CALLBACK Eliminare la registrazione per l'evento.
WIA_SET_DEFAULT_HANDLER Impostare l'applicazione come gestore eventi predefinito.

[in] bstrDeviceID

Tipo: BSTR

Specifica un identificatore del dispositivo. Passare NULL per registrarsi per l'evento in tutti i dispositivi WIA.

[in] pEventGUID

Tipo: GUID const*

Specifica l'evento per il quale l'applicazione sta registrando. Per un elenco di GUID di evento validi, vedere Identificatori di evento WIA.

[in] bstrCommandline

Tipo: BSTR

Specifica una stringa contenente il nome completo del percorso e gli argomenti della riga di comando appropriati necessari per richiamare l'applicazione. È necessario usare due coppie di virgolette, ad esempio ""C:\Program Files\MyExe.exe" /arg1".

[in] bstrName

Tipo: BSTR

Specifica il nome dell'applicazione. Questo nome viene visualizzato all'utente quando più applicazioni eseguono la registrazione per lo stesso evento.

[in] bstrDescription

Tipo: BSTR

Specifica la descrizione dell'applicazione. Questa descrizione viene visualizzata all'utente quando più applicazioni eseguono la registrazione per lo stesso evento.

[in] bstrIcon

Tipo: BSTR

Specifica l'icona che rappresenta l'applicazione. L'icona viene visualizzata all'utente quando più applicazioni eseguono la registrazione per lo stesso evento. La stringa contiene il nome dell'applicazione e l'indice in base 0 dell'icona (potrebbero essere presenti più icone che rappresentano l'applicazione) separate da una virgola. Ad esempio, "MyApp, 0".

Valore restituito

Tipo: HRESULT

Se questo metodo ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore HRESULT .

Commenti

Usare IWiaDevMgr::RegisterEventCallbackProgram per registrare gli eventi del dispositivo hardware del tipo WIA_ACTION_EVENT. Quando si verifica un evento per il quale viene registrata un'applicazione, l'applicazione viene avviata e le informazioni sull'evento vengono trasmesse all'applicazione.

Le applicazioni usano il metodo EnumRegisterEventInfo per recuperare un puntatore a un oggetto enumeratore per le proprietà di registrazione degli eventi.

Un'applicazione può determinare se un evento è un tipo di azione o un tipo di notifica (o entrambi) esaminando il valore ulFlags di una struttura WIA_DEV_CAP restituita dall'enumerazione dell'evento.

I programmi devono usare solo il metodo IWiaDevMgr::RegisterEventCallbackProgram per garantire la compatibilità con le versioni precedenti con le applicazioni non scritte per l'architettura WIA. Le nuove applicazioni devono usare le interfacce COM (Component Object Model) fornite dall'architettura WIA. In particolare, devono chiamare IWiaDevMgr::RegisterEventCallbackInterface o IWiaDevMgr::RegisterEventCallbackCLSID per la registrazione per gli eventi del dispositivo.

In genere, questo metodo viene chiamato da un programma di installazione o da uno script. Il programma di installazione o lo script registra l'applicazione per ricevere gli eventi del dispositivo WIA. Quando si verifica l'evento, l'applicazione verrà avviata dal sistema di runtime WIA.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional, Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione wia_xp.h (include Wia.h)
Libreria Wiaguid.lib
DLL Wiaservc.dll