--- In [email protected], "Sheri" <sheri...@...> wrote: > > FWIW, below is what I get on XP for Word Menu bar and its 13 children. > Showing only self (child 0) and child 1 because all of the other children > look exactly the same as child 1. Below that are self (child 0) and child 1 > of wordpad OBJID_MENU's six children. At the bottom is the script function > that produced the output. All are property-gets except one function > (functions do not work period and property gets are very spotty, and no > facility to translate the role or state). > Get_Accessible_Object of WinWord OBJID_MENU: c_3000 > ================
> Children of Main WinWord menu C_3000 ......<snip>...... > child 1 > ---------------- > Name: // com_type: com_status: ERROR: com.method: Invoke failed (sys code > 80020009: "Exception occurred.") hao.accName could return an exception if the UI item in question had no name. Maybe. Nameless UI elements are quite common, but what happens when accName hits one, I dunno. Can;t find docs on that. What does Accessibility Explorer give as names for children that cause exceptions? > Handle via function: // com_type: com_status: ERRORS: com.method: Can't > interrogate object (sys code 80020006: "Unknown name.") accChild(i) will always return an exception if the child is not a full IAccessible object, i.e. if it's not associated with an IDispatch. http://msdn.microsoft.com/en-us/library/dd318475%28VS.85%29.aspx > State: 1073741824 // com_type: com_status: OK > Default Action: // com_type: com_status: ERROR: com.method: Invoke failed > (sys code 80020009: "Exception occurred.") Quite common for an object not to have a default action. comPlugin0.72_100302.zip adds the following options to get_object_description: "hidden", "i" ;; show hidden funcs "restricted", "e" ;; show restricted funcs ;following require Child Id after options "state", "s" ;; return state of an IAccessible "role", "r" ;; return role of an IAccessible "name", "n" // if not followed by childId, taken to be usual meaning, name of object, not name of I can also modify get_accessible_child to have a version taking one integer argument, which would return handle to IAccessible child if there was one, otherwise return null string? Oh, went back and looked: I've been including oleacc.h all along for #defines, just not linking to oleacc.lib
