Client di automazione

L'automazione consente all'applicazione di modificare gli oggetti implementati in un'altra applicazione o di esporre oggetti in modo che possano essere modificati. Un client di automazione è un'applicazione in grado di modificare gli oggetti esposti appartenenti a un'altra applicazione. L'applicazione che espone gli oggetti è denominata server di automazione. Il client modifica gli oggetti dell'applicazione server accedendo alle proprietà e alle funzioni degli oggetti.

Tipi di client di automazione

Esistono due tipi di client di automazione:

  • I client che acquisiscono in modo dinamico (in fase di esecuzione) informazioni sulle proprietà e sulle operazioni del server.

  • Client che dispongono di informazioni statiche (fornite in fase di compilazione) che specificano le proprietà e le operazioni del server.

I client del primo tipo acquisiscono informazioni sui metodi e sulle proprietà del server eseguendo una query sul meccanismo del IDispatch sistema OLE. Sebbene sia sufficiente usare per i client dinamici, è difficile da usare per i client statici, IDispatch in cui gli oggetti gestiti devono essere noti in fase di compilazione. Per i client associati statici, le classi Microsoft Foundation forniscono la classe COleDispatchDriver .

I client associati statici usano una classe proxy collegata in modo statico all'applicazione client. Questa classe fornisce un incapsulamento C++ indipendente dai tipi delle proprietà e delle operazioni dell'applicazione server.

La classe COleDispatchDriver fornisce il supporto principale per il lato client di Automazione. Usando la finestra di dialogo Aggiungi nuovo elemento , si crea una classe derivata da COleDispatchDriver.

Specificare quindi il file della libreria dei tipi che descrive le proprietà e le funzioni dell'oggetto dell'applicazione server. La finestra di dialogo Aggiungi elemento legge questo file e crea la COleDispatchDriverclasse derivata da , con funzioni membro che l'applicazione può chiamare per accedere agli oggetti dell'applicazione server in C++ in modo indipendente dai tipi. Funzionalità aggiuntive ereditate da COleDispatchDriver semplifica il processo di chiamata del server di automazione appropriato.

Gestione degli eventi nei client di automazione

Per gestire gli eventi nel client di automazione, è necessario aggiungere un'interfaccia sink. MFC fornisce il supporto della procedura guidata per aggiungere interfacce sink per i controlli ActiveX, ma non per altri server COM.

Vedi anche

Client di automazione: uso delle librerie dei tipi
Automazione
Creazione guidata applicazione MFC