2008-12-23 80 views
1

我正在兩個網站上工作。一個是現有的經典asp網站,它將xml發佈到新的asp.net(.net 3.5)網站。經典的asp網站在vbscript中使用msxml的serverxmlhttp對象來發送這個xml。整個事情的工作,直到我做了一個看似無關的變化的asp.net網站。用ServerXMLHTTP超時發佈xml

當我添加的使用System.Speech.Synthesis生成從文本中出傳統的ASP網站serverxmlhttp.send命令次wav文件幾行代碼。據我可以告訴asp.net頁面工作正常,它通過幾行新的代碼沒有問題(wav文件生成)。導致問題的幾行語音代碼在超時之前完成。

這似乎是asp.net頁面被實際發送某種確認回,因此不再得到發送的經典頁面。我還應該指出,語音代碼拋出了一個異常,說它需要是異步的,我通過將Async =「true」添加到了異步中。但是,它在async =「true」時起作用,它只是那些破壞它的語音線。 「問題代碼」只是

SpeechSynthesizer speaker = new SpeechSynthesizer(); 
      speaker.Volume = 100; 
      speaker.SelectVoiceByHints(System.Speech.Synthesis.VoiceGender.Female, System.Speech.Synthesis.VoiceAge.Adult, 0); 
      try 
      { 
       speaker.SetOutputToWaveFile("c:\\test\\output.wav"); 
      } 
      catch (Exception ex) 
      { 
       retVal = false; 
      } 
      speaker.Speak(msgText); 
      speaker.SetOutputToDefaultAudioDevice(); 

任何人都不會有什麼可能是錯誤的或者是我可以用它來幫助調試這有什麼建議?

回答

0

這似乎是asp.net頁面被實際發送某種確認回,因此不再得到發送

這聽起來像你應該更多的研究它的經典網頁所以你可以告訴我們服務器的響應行爲之前和之後。也請指出拋出的異常。

我的猜測是這些API在服務過程中不起作用。我真的沒有線索。我對這個異常很好奇,你不清楚你做了什麼異步。