Одна вещь, которую вы должны принять во внимание, - это разница между настольными распознавателями SAPI и серверными распознавателями SAPI.К сожалению, очень сложно определить (из визуального контроля), какой из них вы включаете - оба они называются sapi.h, но идентификаторы категорий различны.
Одно простое отличие состоит в том, что SAPI_VER равен 0x055 дляверсия сервера, но 0x054 или меньше для настольного компьютера.
Однако ключевое отличие здесь заключается в том, что SPCAT_AUDIOIN (категория аудиовхода) называется по-разному в заголовке SAPI сервера и заголовке SAPI рабочего стола, и это вполне возможноотсутствие токена по умолчанию для категории аудиовхода для распознавателя сервера .
Подключение микрофона не изменит представление *1000* распознавателя сервера о том, что ввод по умолчаниюбыло бы, хотя это изменило бы вход по умолчанию для распознавателя рабочего стола.
Я бы порекомендовал перебрать категорию аудиовхода, используя помощник SpEnumTokens , чтобы увидеть, какие устройства ввода доступны.