Forum Replies Created
I have to confess something. I have not tried my solution all the way… I checked some sample program included in the SDK and that one reports a successfull creation of the engine and loading of the grammar. Also, the setup Wizard launches successfully and the configuration dialogs in the control panel are there. This made me confident that it now should work.
Unfortunately I did all this through remote desktop and VNC, some 200km from the physical server, which means I haven’t yet managed to go through the complete wizard and test the recognition code with an actual microphone.
I’ll of course try this asap, when I get access to the server (returning back home from the holidays). Most probably in the end of this week or in the beginning of next week.
I’ll keep you updated. Meanwhile, some questions:
asbtime: What language is your 2008? I’m running an english version. Also, I don’t know if R2 makes any difference, but I’m running the original version.
Also, you could try to regsvr32 every single dll that you find in c:windowsspeech and c:windowssystem32speech and their subfolders which is not yet in the registry. Also see if you can cross-check every occurance of not only those dll’s that are in my reg files, but all the others as well.
Finally, you could perhaps get something out of a google of the error message. This actually shows that many users on vista and win7 are having the same issue. The first hits:
edit: Also try running the sample from the latest Windows SDK v7.0. On my machine it’s in:
C:Program FilesMicrosoft SDKsWindowsv7.0Sampleswinuispeechcsspeechrecognition
compile and run this. This is the one I’m testing with.
I registered on this forum only to do this post, to help others. I almost gave up getting speech recognition to work under Server 2008 but finally I nailed it.
Just running the program that merges the registry files and then copying the dll-files from a vista machine is not enough. As mentioned by this guy:
you must also copy all CLSID-references. Now, on the contrary to his thoughts, I believe that the unique CLSID-guids are infact not machine-dependant. I’ve checked those on my Windows 7 Pro x64 machine and compared to a vista 32-machine and they seem identical.
This means that the total procedure to succeed is this:
* Run the Windows server 2008 workstation converter program (http://www.win2008workstation.com) and activate speech recognition.
* Follow the instructions and copy all required files from a vista-machine
* Now, all the copied dll-files must be registered in the registry. Here I found that
all the dll-files in the folder: C:WindowsSystem32SpeechSpeechUX can be registered
with the program regsvr32.exe. Simply do this in a command shell with admin rights:
– regsvr32.exe c:windowssystem32speechspeechuxSpeechUX.dll
– regsvr32.exe c:windowssystem32speechspeechuxspeechuxcpl.dll
– regsvr32.exe c:windowssystem32speechspeechuxSpeechUXPS.DLL
– regsvr32.exe c:windowssystem32speechspeechuxSPTIP.DLL
– regsvr32.exe c:windowssystem32speechspeechuxen-gbSpeechUXRes.dll
– regsvr32.exe c:windowssystem32speechspeechuxen-USSpeechUXRes.dll
(the latter is probably language dependant)
* Now, there are also some dll-files in C:WindowsSystem32SpeechEnginesSR that must be registered. Unfortunately, this didn’t work with regsvr32.exe for me. That is why I extracted out every occurance of the following dll files from a Win7 machine registry:
This gave me 15 .reg-files for spsreng.dll, 10 .reg files for spsrx.dll and 40 .reg-files for srloc.dll. I attach these .reg-files in this post, because I believe they are not machine-dependant. Please note that I take NO responsibility of the consequences of using these.
Hope this sorts out some problems for some of you! I think these reg-files need to be merged in a new version of the converter utility!
Merry Christmas from Sweden!