先看错误:
打开配置Program.cs 让其报具体错误 :
// Configure the HTTP request pipeline.
//if (!app.Environment.IsDevelopment())
//{
// app.UseExceptionHandler("/Home/Error");
//}
//在开发模式下,可以启用详细的错误页面等特性
app.UseDeveloperExceptionPage();
错误如下:
System.Speech.Internal.ObjectTokens.RegistryDataKey..ctor(string fullPath, RegistryDataKey copyKey)
项目文件:
本地测试都正常,部署服务器上使用 dywx_tts.exe 访问地址正常,但在IIS上就报错。
接下来排查各种原因:
1.文件夹权限问题,添加各种用户权限仍然无效。
2.声卡问题,但发现winform程序可以生成语音文件。
3.iis线程释放问题,因为是异步操作,让当前线程休眠n秒任然不行。
是权限问题:
把应用程序池的进程标识改成LocalSystem,能正常生成语音文件了。