Speech-Recognition Engines

When the user installs the speech-recognition engine, the Setup program should write the following registry entries:

1. A class ID entry for each OLE Component Object Model (COM) object under the HKEY_CLASSES_ROOT key. Also, apartment-aware in-process objects must be registered as such by specifying the ThreadingModel = "Apartment" entry under the InProcServer32 key. For example:

HKEY_CLASSES_ROOT
CLSID
{ClassID}
InProcServer32
(Default) = "PathToDLL"
ThreadingModel = "Apartment"

2. An engine ID entry under the following key:

HKEY_LOCAL_MACHINE\Software\Voice\SpeechRecognition\Engine

The engine ID entry should be in the following format:

EngineName : REG_SZ : EngineGUID

In an application, the speech-recognition enumerator enumerates all of the strings under this key and allows applications to access the engines' speech-recognition modes.

3. Registry entries for any custom marshaling code.

For information about class IDs and registry entries for marshaling code, see the Microsoft Win32 Software Development Kit (SDK).

The speech-recognition engine is responsible for handling all user preferences that cannot be set with the standard API. Registry values should be stored under HKEY_CURRENT_USER\Software\CompanyName.