1

個人の Web サイトで SpeechLib を使用しようとしています。テキストをwavファイルに保存する非常にシンプルなアプリです-標準的なものです。開発マシンでうまく機能します。しかし、共有ホストにデプロイすると、すべてが崩壊します。

wav ファイルの書き込み時に、ユーザー名とパスワードの入力を求められることがあります。時々、「セキュリティ例外」が発生します。このサイトは完全に信頼されており、アプリから単純な txt ファイルを問題なく書き込むことができます。

インターネットを精査すると、SpeechLib コンポーネントが一時的にファイルを次の場所に書き込むことに気付きました。

C:\Users\XX\AppData\Roaming\Microsoft\Speech\Files\UserLexicons

開発マシンでこれを確認しました。確かにそうです。

したがって、私の推測では、共有ホストでは、ASPNET にはそのフォルダーに書き込む権限がありません (?)。そのため、ホスティング サービスに連絡したところ、Virtual Private Server にアップグレードする必要があると言われました。彼らが何について話しているかを知っているかどうかはわかりません。

SpeechLib を共有ホストで動作させた人はいますか? これが私が直面しているまったく同じ問題です:

http://www.eukhost.com/forums/f41/interop-speechlib-dll-6743/

何かご意見は?

4

2 に答える 2

2

私はその製品を知りませんが、別の一時ディレクトリを使用するように構成する方法を検索 (または連絡) します。ホスティング会社に頼るよりも、欲しいものを手に入れる可能性が高くなります。

しかし、彼らがあなたにアップグレードを望む理由は完全に理解しています (そしてそれは単にお金がかかるからではありません)。

この場合の C:Users\XX ディレクトリは、ログインするユーザーごとではなく、Asp.Net が実行されているアカウントのディレクトリになるため、共有ホスティングのすべてのユーザーにとって同じディレクトリになる可能性があります。

プライベートサーバーまたは仮想プライベートサーバーでは、その環境で実行されているのはあなただけなので、ユーザーディレクトリにアクセスできます (それでも、それを行うのは良い考えではありません)。

これが役立つかどうかはわかりませんが、それは私がそれにアプローチする方法です。

于 2009-11-24T01:40:50.063 に答える
1

基本的に、ディスクへの書き込みには、そのための許可を与える必要があります。

ホストがディスクへの書き込み許可を与えない場合は、ホスティングを変更する必要があります。

于 2009-11-26T15:01:09.537 に答える