AccProbe: The Accessibility Probe
The Accessibility Probe (AccProbe) is a standalone, Eclipse Rich-Client Product (RCP) application that provides a view of the Microsoft Active Accessibility (MSAA) or IAccessible2 hierarchy of a currently running application or rendered document and of the properties of the accessible objects of that application or document. It can also serve as an event monitor for tracking the events fired by these accessible objects. It is meant to combine the functionality of tools like Microsoft's Inspect32, AccExplore, and AccEvent into one easy-to-use application for accessibility testing and debugging.
Since AccProbe is an Eclipse RCP application, ease of use has been a primary objective. Simply unpack the archive you chose to download above to a directory of your choosing. A top-level
accprobe directory will be created for you. Within this directory, run
accprobe.exe and you're off! For more detailed instructions and using AccProbe, consult the User's Guide, also found in the
Note: If you intend to inspect or monitor an IAccessible2-enabled application, you will need to register the
IAccessible2Proxy.dll packaged with AccProbe. You do this as follows:
In order to install the IA2 Proxy, you need to run regsvr32 from the command prompt as an administrator. To do this, go to the Start Menu and search for the command prompt menu item. If you are running on Windows 7 systems, you must
run regsvr32 with administrator privileges. To do that, place focus on the menu item, open the item's context menu (either via right-click or F-10) and use the context menu to select "Run as Administrator", otherwise, simply activate the menu item.
where "dllname" is the full path to the
There are several steps for building AccProbe, depending upon whether or not you wish to build the requisite DLLs:
Extract the source code
- Create a workspace in your eclipse root parallel to plugins directory
- In Eclipse, import the following projects into the workspace by File->Import->General->Existing Projects into Workspace
/org.a11y.utils.accprobe/accprobe.productin product configuration editor and go to
Contentstab. Make sure
org.eclipse.rcpbundle version matches with the one in your plugins directory. If not, remove
dependenciesand click Add and type
org.eclipse.rcpin feature selection dialog and select the appropriate bundle.
You will also need the following bundles from the Orbit project for an IDE build:
Please check your eclipse plugins directory if these bundles exist before downloading them. Download the latest versions and for
org.apache.commons.logging, download the one which is used for logging and not for http manipulation. Right now, the latest version for
org.apache.commons.logging is 1.04. Download the bundles, drop them into your plugins directory, and restart the workbench.
- build the AccProbe product:
- Select File>Export... and choose Plug-inDevelopment>Eclipse Product
- Click Next
/org.a11y.utils.accprobe/accprobe.productfor the Configuration or Browse to it
accprobeas the root directory and check the synchronize checkbox
- Select either an archive or directory to which to export the product and provide the remaining requisite information
- Click Finish
- build the IAccessible2Proxy.dll (optional)
- build the MSAA- and IAccessible2-specific dlls for AccProbe (optional)
Copyright (c) 2007, 2010, 2017 IBM Corporation
Copyright (c) 2010 Linux Foundation
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
Neither the name of the Linux Foundation nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
This BSD License conforms to the Open Source Initiative's Simplified BSD License as published at: