共享主机上的Speechlib-ASP.NET

共享主机上的Speechlib-ASP.NET,.net,asp.net,text-to-speech,speech,.net,Asp.net,Text To Speech,Speech,我试图在我的个人网站上使用SpeechLib。这是一个非常简单的应用程序,可以将一些文本保存到wav文件中——这是标准的东西。在dev机器上工作得很好。但是,当我将它部署到共享主机时,所有的麻烦都爆发了 有时,在编写wav文件时,会提示输入用户名和密码。有时,我会遇到“安全异常”。该网站完全信任,我可以从我的应用程序中编写一个简单的txt文件,没有任何问题 在浏览互联网时,我意识到SpeechLib组件临时将文件写入: C:\Users\XX\AppData\Roaming\Microsoft\

我试图在我的个人网站上使用SpeechLib。这是一个非常简单的应用程序,可以将一些文本保存到wav文件中——这是标准的东西。在dev机器上工作得很好。但是,当我将它部署到共享主机时,所有的麻烦都爆发了

有时,在编写wav文件时,会提示输入用户名和密码。有时,我会遇到“安全异常”。该网站完全信任,我可以从我的应用程序中编写一个简单的txt文件,没有任何问题

在浏览互联网时,我意识到SpeechLib组件临时将文件写入:

C:\Users\XX\AppData\Roaming\Microsoft\Speech\Files\UserLexicons
我在dev机器上验证了这一点。确实如此

因此,我猜测在共享主机上,ASPNET没有写入该文件夹的权限(?)。所以,我接触了托管服务,却被告知我必须升级到虚拟专用服务器。我不确定他们是否知道自己在说什么

有人让SpeechLib在共享主机上工作吗。这是我面临的完全相同的问题:


有什么想法吗?

我不知道该产品,但我会搜索(或联系他们)一种方法,将其配置为使用不同的临时目录。比起收购托管公司,你更有可能得到你想要的东西

然而,我完全理解他们为什么希望你升级(这不仅仅是为了更多的钱)

在这种情况下,C:Users\XX目录对于共享主机中的每个人都可能是相同的目录,因为它将是Asp.Net正在运行的任何帐户的目录,而不是每个登录的用户的目录

在专用服务器或虚拟专用服务器中,您将是该环境中唯一运行的服务器,因此您可以访问用户目录(这样做仍然不是一个好主意)


不知道这是否有帮助,但我会这样做。

基本上,任何写入磁盘的操作都需要获得这样做的权限


如果您的主机不允许您写入磁盘,则您需要更改主机。

我正在将WAV文件写入一个对ASPNET帐户具有完全权限的文件夹。