Windowsサービスとして実行される製品でTAPIを使用して開発を簡素化するために、AddTapi.NETのライセンスを購入しました。Windows GUIおよびコンソールアプリケーションでTAPIを使用し、コードをWindowsサービスに移植することができました。その時点で、TapiCall.SpeakやTapiCall.Play(wavefile)などの音声APIを使用するコードは電話回線で音を生成せず、無音のままであることに気付きました。
私の問題に関連する可能性のある以前の質問がいくつかあります。
質問:Windowsサービスからモデムを介してVoiceを再生すると、WindowsサービスでGUIスレッドを生成することで解決された音声の使用に問題があることが示されました。私はこれを試みましたが、電話でスピーチを聞くことができませんでした。
質問:WindowsサービスでのTapiのアクセス違反は、サービスでのTAPIの初期の問題を示しているようですが、AddTapi製品を使用することで解決されました。チケットには、音声APIの使用については明示的に記載されていません(SAPI)
Visual Studio2010と.NET4.0を使用してC#でプログラミングしています。これをWindows7で動作させようとしています。AddTapiから、Microsoftがセキュリティを変更してWin 2008 Server、Windows Vista、およびWindows7のサービスからの音声サブシステムの使用を禁止することを示す電子メールを受け取りました。記事は、Windows 7にはないかもしれませんが、AddTapiである程度の成功を示しているようです。
私が使用しているメインシステムがWindowsサービス(および子プロセス)であることを考えると、スピーチを機能させるための最良のアプローチと思われるものは何でしょう。SAPIコードをコンソールアプリケーションに配置する場合、ユーザーがコンピューターにアクティブにログオンしていなくても、これを管理できるようにしたいと思います。私のTAPIコードについてグラフィカルなものは何もありません。Article:インタラクティブプロセスを起動してインタラクティブプロセスを生成するのと同様のアプローチを取る必要がありますか?WindowsサービスでTAPIスピーチを使用したサクセスストーリーはありますか?