Modalità di implementazione degli ID figlio da parte dei server
Gli sviluppatori di server possono assegnare ID figlio sia a elementi semplici che a oggetti accessibili. Tuttavia, l'approccio consigliato consiste nel supportare l'interfaccia IEnumVARIANT (Component Object Model) standard in ogni oggetto accessibile con elementi figlio.
Se si implementa IEnumVARIANT, è necessario:
- Enumera tutti gli elementi figlio, sia gli elementi semplici che gli oggetti accessibili. Specificare gli ID figlio per tutti gli elementi semplici e fornire l'IDispatch a ogni oggetto accessibile.
- Per gli oggetti accessibili, impostare il membro vt di VARIANT su VT_DISPATCH. Il membro pdispVal deve contenere un puntatore all'interfaccia IDispatch . Si noti che variant viene allocato e liberato dal client.
- Per gli elementi semplici, l'ID figlio è un intero positivo a 32 bit. Si noti che gli interi zero e negativi sono riservati da Microsoft Active Accessibility. Impostare il membro variant structure vt su VT_I4 e il membro lVal sull'ID figlio.
Se non si supporta IEnumVARIANT, è necessario assegnare ID figlio e numerare gli elementi figlio in ogni oggetto in sequenza a partire da uno.
È consigliabile che i client usino la funzione AccessibleChildren di Microsoft Active Accessibility anziché chiamare direttamente l'interfaccia IEnumVARIANT del server.