Manually adding Microsoft Mary and Mike voices to Windows XP

I had a customer who was trying to add more voices to the Speech control panel module. He was using a program related to ham radio that would make an automated announcement before a broadcast. Following the instructions on a site for the software he was using, he installed the Speech 5.1 SDK software. Then, farther down the instructions he was reading, the page said not to do this if you were running Windows XP (which I didn’t understand since Speech 5.1 SDK says it’s compatible with XP, but maybe not when this other software is installed). IN any event, my customer could see the additional voices in the Speech module, but when he tried to change to a different one and press OK, he would receive the error “An exception occurred while trying to run “shell32.dll,Control_RunDLL
‘C:\Program Files\Common Files\Microsoft Shared\Speech\sapi.cpl’ .”

My first idea was to uninstall Speech 5.1 SDK. Well that removed the error, but it also removed the extra voices. I searched on the Internet and found other people who wanted the voices, but no good explanation to get them. So I reinstalled Speech 5.1 SDK and found the voice files and their related registry entries. I copied the files and exported the appropriate registry entries, then I uninstalled Speech 5.1 SDK. I then manually installed the voices as follows:

I copied the files mary.sdf, mike.sdf, mary.spd, mike.spd to “C:\Program Files\Common Files\SpeechEngines\Microsoft\TTS\1033” (their original location).

I imported the 2 registry keys referring to these files which are located at:

HKLM\SOFTWARE\Microsoft\Speech\Voices\Tokens\MSMike

HKLM\SOFTWARE\Microsoft\Speech\Voices\Tokens\MSMary

After this, the two voices appeared in the Speech CP module. I could select them without error and preview the voices.

Sometimes you just have to do things the hard way.

Leave a Reply