Hi,
I'm trying to detect if a screen reader is attached to my application so that I can improve the experience for blind and low vision users. I'm using this win32 api (http://msdn.microsoft.com/en-us/library/ms724947%28VS.85%29.aspx), and specifying SPI_GETSCREENREADER as the uiAction. Call looks something like this:
int iAction = 70; // SPI_GETSCREENREADER constant;
int iParam = 0;
int iUpdate = 0;
bool result = false;
bool bReturn = SystemParametersInfo(iAction, iParam, &result, iUpdate);
If JAWS is running, or for that matter the magnification utility, this API reports that a screen reader is attached. However, if I only have the built in screen reader running (MS Narrator), this API reports that no screen reader is attached.
Is this really happening? Did the folks over at Microsoft really decide not to report the built in screen reader as a screen reader?