few solutions identified (for 64-bit users)
By trying the method outlined above, I was able to change the default voice... Until I went back to the Control Panel>Speech Recognition applet afterwards. All I saw there was the same Microsoft Anna default voice, which to me was no good, so I did some digging on my own, and found this bit of information:
While looking for "Microsoft Mike" within the registry (not visible in the standard TTS config window, but visible in the WoW64 version), I found an entry in this branch of the registry:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Speech\Voices\Tokens
While the entry for Microsoft Anna was in a completely different branch:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\Voices\Tokens
Now, I'm probably braver (read: stupider) than many folks, and I am NOT suggesting this fix for anyone else, but it worked for me. Here's what I did (right after the usual warnings about mucking about in the registry):
WARNING!!!
The registry contains essential configuration values that can adversely effect the operation of your computer, if not handled correctly, and with care. If you make the wrong changes in the registry, you can potentially do IRREPARABLE damage to your computer, requiring a wipe/reinstall of your operating system, and potential loss of important documents or files. If you're not 100% confident that you know what you're doing, then don't do it. You HAVE been warned.
1.) Open the TTS config applet, as described above (%windir%\SysWOW64\speech\SpeechUX\sapi.cpl), and select a voice from the list other than Microsoft Anna. Note the name (e.g "Microsoft Mike", or one of any 3rd party voices you may have installed).
2.) Open regedit (see warning, above!) and search for the voice's name (e.g. "Microsoft Mike", or whatever). Your first "found" location for that string value SHOULD be at the branch I mentioned, above. If not, keep searching.
3.) Once found in the correct branch, right-click on the "Tokens" folder, just above your current location, in the nav panel, and click "Export". Save the file in a convenient location.
4.) Open that newly created .reg file by navigating to it in Explorer, right-clicking on the file, and selecting "Edit".
5.) Did you close Regedit yet? No? Good. Now follow the same steps above, this time looking for "Microsoft Anna". The correct branch that you want will be very similar or identical to the second registry branch I mentioned, above. Again, export the Tokens folder to a convenient place, and "edit" this one, as well. In this file, the first line of registry entry information should look like this:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\Voices\Tokens]
6.) Select everything except the square brackets, but don't copy it yet.
7.) Switch to the other file, and highlight that same first entry line EXCEPT for the square brackets. Hit CTRL-C, CTRL-H, CTRL-V (Copy, Replace, Paste), then switch back to the other file, make sure the necessary text is still selected, then copy that. Then back to the first file again, paste the new line into the "replace" textbox, and click "Replace All". Save the file.
8.) In explorer, select the file you just changed, and merge it back into the registry. This will "Add" all of the voices that were on the WoW64 version of the TTS config applet to the "regular" config applet. Please note that you "MAY" get a warning that not everything was properly merged into the registry. If you get this warning, removing the information about Microsoft Anna should fix the issue quite nicely.
(for windows8?)
well i hardly can take it as a fix since its WAY too easy but it surly have worked for me!!
I use windows 8 (maybe thats why its easy??) 64 bit and had the exact same probs as in windows 7. but then i tried installing the voice at once in that folder: C:\Windows\Speech\Engines\TTS\en-GB since the language is UK... (At en-US if american). and vouala. Voices show up perfectly good at Controll panels options, and can also use them by external programs wich dont use only the defult voice... I have done this using two of INOVAS vocies, but i think it will work the same way with any other!! can some one try it and say if it works for them also??
(update I'm gonna reference now, although reportedly doesn't work with tts wsr, so depends on your requirements)
So I know it's been a couple years, but I was using this as reference to try and add the new Speech Platform v11 voices to the win 7 TTS options. The above DOES work, but the details are slightly off. Technically to get them to work I had to add two sets of registry entries. The method above got more than just Anna to list in TTS panel that you can access via control panel, but it did NOT add them to the one launched via SysWOW64\Speech\SpeechUX\sapi.cpl which would cause the computer to go back to Anna any time TTS was used. The solution was to look deeper in the registry. The v11 voices are added to the registry at HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech Server\v11.0\Voices AND HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Speech Server\v11.0\Voices. Said tree contained the proper token entries for each voice. Now the fun part:
0. Pre-requisite: Download and Install Speech Platform Runtime Languages from:
http://www.microsoft.com/en-us/download/details.aspx?id=27224 and the Speech Platform v11 from:
http://www.microsoft.com/en-us/download/details.aspx?id=27225. There are many voices to choose from, although en-US ZiraPro and en-GB Hazel are both good English options. Once you have selected voices, installed the Platform and voices proceed to making them work:
1. Under HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech Server\v11.0\Voices Click the Tokens folder and export. Save this file to your desktop as voices1.reg so it will be easy to find and line up with later steps.
2. Under HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Speech Server\v11.0\Voices select Tokens and again export it, again to the desktop. Call it voices2.reg.
3. EDIT (right click, select edit) voices1.reg. In notepad use the Replace function and replace \Speech Server\v11.0\ with \Speech\ (Just replace that section, the rest will remain intact and entries with "[ ]" around them should read as such: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\Voices\*[*= some entries WILL be nested in folders below this. The key is making sure that the patch is \Speech\ and not \Speech Server\v11.0\). Save and close.
4. EDIT (right click, select edit) voices2.reg. In notepad use the Replace function and replace \Speech Server\v11.0\ with \Speech\ (Just replace that section, the rest will remain intact and entries with "[ ]" around them should read as such: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Speech\Voices\*[*= some entries WILL be nested in folders below this. The key is making sure that the patch is \Speech\ and not \Speech Server\v11.0\). Save and close.
5. Merge both of the files we just edited into the registry by double-clicking them and answering yes when prompted.
6. Reboot computer and enjoy it's new voices.
Tested this on my laptop as well, slightly easier since its x86, it only involves the first registry file as Wow6432Node only exists on x64 architecture.
DISCLAIMER: This method works with the MS Speech Platform Server v11.0 voices available for download. The method is likely similar for adding purchased and third-party voices as well, but locating the voice tokens that you need to copy into the MS default tokens will be up to you.