Cómo controlar WM_GETOBJECT
Cuando recibe un mensaje de WM_GETOBJECT que contiene OBJID_CLIENT, el servidor debe devolver un puntero al objeto que implementa IAccessible. Este puntero es un LRESULT que se obtiene llamando a LresultFromObject. La accesibilidad activa de Microsoft, junto con la biblioteca modelo de objetos componentes (COM), realiza las referencias adecuadas y pasa el puntero de interfaz IAccessible del servidor al cliente.
Los servidores deben controlar correctamente el recuento de referencias en el objeto accesible. Recuerde que al crear un objeto COM, el recuento de referencias es 1. LresultFromObject incrementa el recuento de referencias varias veces. Todas las referencias creadas por LresultFromObject se liberan automáticamente cuando el objeto ya no es necesario, pero el servidor es responsable de liberar la referencia inicial y, a menos que lo haga, el objeto nunca se destruirá. En los ejemplos de las secciones siguientes se muestra cómo liberar referencias a objetos accesibles.
Normalmente, los servidores controlan WM_GETOBJECT de una de las siguientes maneras:
- Crear nuevos objetos accesibles
- Reutilización de punteros existentes a objetos
- Crear nuevas interfaces en el mismo objeto
Nota
En esta sección, como en el resto de la documentación, cuando se analiza un puntero a una interfaz IAccessible , este puntero puede ser realmente un puntero a un objeto proxy que encapsula la interfaz IAccessible . Para obtener más información sobre los objetos proxy, vea Creating Proxy Objects.
Para obtener información general sobre WM_GETOBJECT, consulte Funcionamiento de WM_GETOBJECT.