CreateStdAccessibleObject function

Creates an accessible object with the methods and properties of the specified type of system-provided user interface element.


HRESULT CreateStdAccessibleObject(
  HWND   hwnd,
  LONG   idObject,
  REFIID riid,
  void   **ppvObject



Type: HWND

Window handle of the system-provided user interface element (a control) for which an accessible object is created.


Type: LONG

Object ID. This value is usually OBJID_CLIENT, but it may be another object identifier.



Reference identifier of the requested interface. This value is one of the following: IID_IAccessible, IID_IDispatch, IID_IEnumVARIANT, or IID_IUnknown.


Type: void**

Address of a pointer variable that receives the address of the specified interface.

Return Value


If successful, returns S_OK.

If not successful, returns a standard COM error code.


Server applications call this function when they contain a custom UI object that is similar to a system-provided object. Server developers can call CreateStdAccessibleObject to override the IAccessible methods and properties as required to match their custom objects. Alternatively, server developers can use Dynamic Annotation to override specific properties without having to use difficult subclassing techniques that CreateStdAccessibleObject requires. Server developers should still use CreateStdAccessibleObject for structural changes, such as hiding a child element or creating a placeholder child element. This approach saves server developers the work of fully implementing all of the IAccessible properties and methods.

This function is similar to CreateStdAccessibleProxy, except that CreateStdAccessibleProxy allows you to specify the class name as a parameter whereas CreateStdAccessibleObject uses the class name associated with the hwnd parameter.


Minimum supported client Windows 2000 Professional [desktop apps only]
Minimum supported server Windows Server 2003 [desktop apps only]
Target Platform Windows
Header oleacc.h
Library Oleacc.lib
DLL Oleacc.dll
Redistributable Active Accessibility 1.3 RDK on Windows NT 4.0 with SP6 and later and Windows 95

See Also



Shortcuts for Exposing Custom User Interface Elements