spoken = "<silence msec=\"500\"/>" + spoken;
ispvoice1.Speak(spoken, SpeechVoiceSpeakFlags.SVSFlagsAsync);
ispvoice1.WaitUntilDone(Timeout.Infinite);
是这样的我做了一个text-to-speech  在本地运行是没有问题的 。
但放到服务器上面去,就出来问题
是这一行ispvoice1.Speak(spoken, SpeechVoiceSpeakFlags.SVSFlagsAsync);错误如下:
  堆栈跟踪: 
[UnauthorizedAccessException: 拒绝访问。 (异常来自 HRESULT:0x80070005 (E_ACCESSDENIED))]
   SpeechLib.SpVoiceClass.Speak(String Text, SpeechVoiceSpeakFlags Flags) +0
   _Default.Page_Load(Object sender, EventArgs e) in d:\tts\newweb\Default.aspx.cs:68
   System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e) +15
   System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +33
   System.Web.UI.Control.OnLoad(EventArgs e) +99
   System.Web.UI.Control.LoadRecursive() +47
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1061我在本地测试没有问题 是因为本地PC 有声卡  而服务器上面是没有的。  
  那调用Speak这个方法应该怎么办啊?  各路朋友帮帮忙吧!
  先谢啦。