[jawsscripts] Re: Direct speech via JAWS COM API

  • From: Jamal Mazrui <empower@xxxxxxxxx>
  • To: jawsscripts@xxxxxxxxxxxxx
  • Date: Wed, 4 Mar 2009 16:58:27 -0500 (EST)

Thanks, Doug!  By the way, I did searches of all JFW documentation,
including fsdn.chm, and found no references to this object model.

If anyone has a 64-bit computer, I'm interested in feedback on
compatibility of EdSharp
http://EmpowermentZone.com/edsetup.exe

FileDir
http://EmpowermentZone.com/dirsetup.exe

and/or JAWS Script Exchange
http://EmpowermentZone.com/jsxsetup.exe

I do not have access to such a computer myself at present.  A user
reported crashes in Edsharp and FileDir, which I narrowed to use of
jfwapi.dll for direct speech messages.  In the March 4 versions of
EdSharp and FileDir that I posted today, the COM object model is used
instead.  I'm curious whether that resolves the problem.  A test, for
example, is to press Alt+P in EdSharp, which should speak the full path
of the current document (more than the file name in the title bar).

These applications have a checkbox at the end of their installation
processes which offer JAWS scripts to fine tune speech in ways that I
could not do otherwise.  The checkbox is off by default, since other
screen readers may not want them.  I'm curious, if the checkbox is marked,
whether the scripts are successfully installed on a 64-bit computer, or
whether an error message results.  A bundled copy of jsx.exe is used for
this.  You can test whether EdSharp or FileDir scripts are loaded by
pressing JAWSKey+Q (the standard key for this) when EdSharp or FileDir is
active.

Jamal

> Date: Wed,
4 Mar 2009 11:31:00 -0500 > From: Doug Lee <doug.lee@xxxxxxxxxxxxxxxx>
> Reply-To: jawsscripts@xxxxxxxxxxxxx
> To: jawsscripts@xxxxxxxxxxxxx
> Subject: [jawsscripts] Re: Direct speech via JAWS COM API
>
> VBScript:
> dim o : set o = createObject("FreedomSci.JawsApi")
> o.sayString "Hello", False
>
> Summary of FSAPI.dll COM interface (JAWS 10 as reference):
>     function Disable as Bool
>     function Enable(Bool vbNoDDIHooks) as Bool
>         method Enable
>     function RunFunction(BStr FunctionName) as Bool
>         Tells JAWS to execute a function
>     function RunScript(BStr ScriptName) as Bool
>         Tells JAWS to execute a script
>     function SayString(BStr StringToSpeak[, Bool bFlush = True]) as Bool
>         Instructs JAWS to speak a particular string
>     sub StopSpeech
>
> On Wed, Mar 04, 2009 at 11:11:51AM -0500, Jamal Mazrui wrote:
> A while back I asked how to do this but got no reply.  Doug Lee informed
> me on this list that there is a COM API that is part of a JAWS
> installation.  Previously, I had only known of a way for an application to
> produce a speech message through JAWS by using a Win32 type of call to
> JFWAPI.dll.
>
> Although I did find references to a COM object model using a COM browser,
> I could not figure out how to instantiate and use such an object.  Can
> anyone tell me how an application, other than JAWS, can call a COM method,
> passing it a string, to produce a speech message through the currently
> running JAWS?
>
> This has become more important because JFWAPI.dll does not seem to
> work under 64 bit Windows.
>
> Jamal
>
> __________?
> Visit and contribute to The JAWS Script Repository http://jawsscripts.com
>
> View the list's information and change your settings at
> http://www.freelists.org/list/jawsscripts
>
> --
> Doug Lee, Senior Accessibility Programmer
> SSB BART Group - Accessibility-on-Demand
> mailto:doug.lee@xxxxxxxxxxxxxxxx  http://www.ssbbartgroup.com
> "While they were saying among themselves it cannot be done,
> it was done." --Helen Keller
> __________ 
> Visit and contribute to The JAWS Script Repository http://jawsscripts.com
>
> View the list's information and change your settings at
> http://www.freelists.org/list/jawsscripts
>
__________ 
Visit and contribute to The JAWS Script Repository http://jawsscripts.com

View the list's information and change your settings at 
http://www.freelists.org/list/jawsscripts

Other related posts: