在我的个人网站,我想使其“发音”的东西
我解决了“概念”的问题,因为在这里 ,我的桌面上,从Visual Web Developer中启动时它工作的顺利进行。 创建一个文件,然后在页面中嵌入的播放机可以播放它。 完善。
所以,我上传到服务器上...我得到这个错误500:
在“/ SAPI应用程序的服务器错误。 访问被拒绝。 (从HRESULT异常:0X80070005(E_ACCESSDENIED))说明:在当前web请求的执行过程中发生了未处理的异常。 请检查堆栈跟踪有关该错误它起源于代码的详细信息和。
异常详细信息:System.UnauthorizedAccessException:访问被拒绝。 (从HRESULT异常:0X80070005(E_ACCESSDENIED))
ASP.NET未被授权访问所请求的资源。 考虑授予资源以ASP.NET请求标识访问权限。 ASP.NET具有基部进程标识(通常{MACHINE} \ ASPNET IIS 5上或IIS 6上网络服务),如果应用程序没有模拟时使用。 如果应用程序正在通过冒充,身份将是匿名用户(通常IUSR_MACHINENAME)或经过身份验证的请求用户。
(......)
源错误:
看到它下面
源文件:C:\ mypath中\ SAPI \ myfile.aspx.cs行:21
堆栈跟踪:
[UnauthorizedAccessException:访问被拒绝。 (从HRESULT异常:0X80070005(E_ACCESSDENIED))]
SpeechLib.SpVoiceClass.Speak(字符串文本,SpeechVoiceSpeakFlags标志)0 prova.Button1_Click(对象发件人,EventArgs e)如C:\ mypath中\ SAPI \ prova.aspx.cs:21 System.Web.UI.WebControls.Button.OnClick (EventArgs的)111
System.Web.UI.WebControls.Button.RaisePostBackEvent(字符串eventArgument)+110
System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(字符串eventArgument)+10
System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl,字符串eventArgument)+13 System.Web.UI.Page.RaisePostBackEvent(NameValueCollection中POSTDATA)+36
System.Web.UI.Page.ProcessRequestMain(布尔includeStagesBeforeAsyncPoint,布尔includeStagesAfterAsyncPoint)1565版本信息:Microsoft .NET Framework版本:2.0.50727.3053; ASP.NET版本:2.0.50727.3053
这是源
源错误:
第19行: myfile.Open(@"C:\mypath\sapi\gen\hi.wav",SpeechStreamFileMode.SSFMCreateForWrite,false);
第20行: voice.AudioOutputStream = myfile;
第21行: voice.Speak("Hi",SpeechVoiceSpeakFlags.SVSFDefault);
我得到的第21行错误,Voice.speak
这可能意味着,ASPNET工作的用户也没有一些正确的权限
生成文件夹拥有所有正确的权限:创建一个空文件。
所以,我不得不放弃执行某些系统DLL的许可?
你知道哪个DLL? 这不是 bin\Interop.SpeechLib.dll
,就这一个ASPNET用户具有完全控制
PS:我对(窗口)完全控制服务器(我的意思是,通过RDC访问,是不是一个共享的主机)