Interfaccia e accessibilità IDispatch
L'interfaccia IDispatch è stata inizialmente progettata per supportare l'automazione. Fornisce un meccanismo di associazione tardiva per accedere e recuperare informazioni sui metodi e sulle proprietà di un oggetto. In precedenza, gli sviluppatori di server dovevano implementare sia le interfacce IDispatch che IAccessible per gli oggetti accessibili; cioè, hanno dovuto fornire una doppia interfaccia. Con Microsoft Active Accessibility 2.0, i server possono restituire E_NOTIMPL dai metodi IDispatch e Microsoft Active Accessibility implementerà l'interfaccia IAccessible .
Oltre ai metodi ereditati da IUnknown, gli sviluppatori di server devono implementare i metodi seguenti all'interno della definizione di classe di ogni oggetto esposto:
- GetTypeInfoCount restituisce il numero di descrizioni dei tipi per l'oggetto. Per gli oggetti che supportano IDispatch, il conteggio delle informazioni sul tipo è sempre uno.
- GetTypeInfo recupera una descrizione dell'interfaccia programmabile dell'oggetto.
- GetIDsOfNames esegue il mapping del nome di un metodo o di una proprietà a un DISPID, che viene usato successivamente per richiamare il metodo o la proprietà.
- Invoke chiama uno dei metodi dell'oggetto oppure ottiene o imposta una delle relative proprietà.