UiaEventCallback callback function

Note  This function is deprecated. Client applications should use the Microsoft UI Automation Component Object Model (COM) interfaces instead.

A client-implemented function that is called by UI Automation when an event is raised that the client has subscribed to.


typedef void WINAPI UiaEventCallback(
  _In_ UiaEventArgs *pArgs,
  _In_ SAFEARRAY    *pRequestedData,
  _In_ BSTR         pTreeStructure


pArgs [in]

Type: UiaEventArgs*

The address of a UiaEventArgs structure that contains the event arguments.

pRequestedData [in]


A SAFEARRAY that contains data associated with the event.

pTreeStructure [in]

Type: BSTR

A string that contains the structure of the tree associated with the event, if the event is associated with a set of nodes. See Remarks.


This function is passed to UiaAddEvent and UiaRemoveEvent.

The tree structure is described by a string where every character is either "p" or ")". The first character in the string always represents the root node. The string is NULL if no elements are returned by the function.

A "p" represents a node (UI Automation element). When one "p" directly follows another, the second node is a child of the first. A ")" represents a step back up the tree. For example, "pp)p" represents a node followed by two child nodes that are siblings of one another. In "pp))p", the last node is a sibling of the first one.


Minimum supported client

Windows XP [desktop apps only]

Minimum supported server

Windows Server 2003 [desktop apps only]