Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

SAPI 5.3 backward compatibility ?

24 views
Skip to first unread message

Tomasz Pyra

unread,
Oct 5, 2007, 4:39:14 AM10/5/07
to
Is this good idea to switch into SAPI 5.3 when my TTS synthesizer should
work also on older Windows versions?

Now I distribute SAPI4 and SAPI5 (builded using SAPI5.1 SDK) versions,
and it is ok for most Windows versions.

When I'll build synthesizer using SAPI5.3 SDK, will it be compatible
with older Windows versions with default SAPI5 runtime?
Or it is better to stay on SAPI 5.1?

And what are advantages of bulding 64-bit version of syntesizer? Can
64bit apps use old 32bit synthesizers?

There are two places where are data about synthesizers:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Speech\Voices
and
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\Voices

as I see 64bit apps (i.e. control panel) can use only 64-bit
synthesizers, and 32bit apps can use only 32-bit tts.
Should I prepare separate TTS engine for 64 bit apps, just like my
current separate engines for SAPI4 and SAPI5, or there is solution to
prepare one engine for both 32 an 64 bit apps?

Dave Wood [MS]

unread,
Oct 5, 2007, 1:15:29 PM10/5/07
to
Yes, SAPI 5.3 is backward compatible with earlier versions of SAPI 5. Note
that SAPI 5.3 is only available on Vista, and earlier versions of SAPI 5
won't install on Vista.

As for 64-bit, yes to support all scenarios you would want to install both
32-bit and 64-bit versions of your engine onto a 64-bit machine. 64-bit apps
cannot load 32-bit dlls so they would need a 64-bit engine. Similarly,
32-bit apps cannot load 64-bit dlls so they would need a 32-bit engine.

The 64-bit engine dll would install into C:\program files, and the 32-bit
version into C:\program files {x86} {assuming you are installing into the
program files directory}, and as you say there are different areas of the
registry for 32 and 64 bit components with some special redirection to allow
32-bit apps to run unchanged on a 64-bit system.

There's lots of resources on 64-bit stuff here:
http://msdn2.microsoft.com/en-us/library/bb427430.aspx and searching the web
on "wow64" will point you to lots of other stuff.


"Tomasz Pyra" <hell...@spam.spam.spam> wrote in message
news:fe4t6j$sq3$1...@news2.task.gda.pl...

Hieu Nguyen

unread,
Nov 9, 2007, 11:20:20 AM11/9/07
to
As with any other Windows applications, you also want to define _WIN32_WINNT
to the oldest OS version you want to support so it will not accidentally use
any new features. For example
#define _WIN32_WINNT 0x0501
to work with both XP and Vista.

"Dave Wood [MS]" <dave...@online.microsoft.com> wrote in message
news:ehBHVN3...@TK2MSFTNGP04.phx.gbl...

0 new messages