- 締切済み
ASP経由でのODBCの接続について
WindowsServer2008SP1(64bit版)で開発しています。 クライアントからサーバーのASPを動かして、そのASPの中でexeを動かしているのですが、その際に「指定したコネクションは存在しません」というメッセージと共にエラーになってしまいます。 サーバーから直接VBSで動かしたときには、上手くいくのですが、ASPからだと上手くいかないという現象です。 SQLServerへの接続にはODBCを使っており、システムDNSにも作成してあるのですが、ほかに何か設定が必要なのでしょうか?
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- jamshid6
- ベストアンサー率88% (591/669)
回答No.1
質問の背景が十分理解できたわけではないです (レガシーASPなのか、ASP.NETなのか、なぜADO/ADO.NETでやらないのか、Exe自体がリモートで動いた結果のエラーなのかどうかも?) 手動でうまくいき、リモートでうまくいかないのは権限の問題でしょう。 システムDSNはレジストリに書かれますが、ASPによりサーバ側で動くアカウント(IUSER_xxxxとか)がそれを読めていないのでは? ファイルDSNに変えて権限を与えてみたら確認できるかもしれません。 ちなみに、ASP経由でサーバのExeを叩くようなことはセキュリティ面でも処理の安定性の面でもあまりやらないと思います。
お礼
ありがとうございます。 環境はまさしくレガシーASPです。EXEがキックされたあとに、そのEXEからコネクションが存在しませんのメッセージが返されてしまいます。 IUSERをAdministratorsグループに加えてみたり、IISの実行ユーザーをAdministratorに変えてみたりもしたのですが、うまくいきませんでした。 WS2003、IIS6.0では動いていたシステムなので、ソース変更なしで動くと思うのですが・・・
補足
アプリケーションプールのユーザーをネットワークサービスからローカルサービスにかえることでODBCの接続は出来るようにはなりました。ただ、今度は「[SQL Native Client]他のコマンドの結果のために、接続がビジー状態になっています」というエラーが表示されるようになってしまいました・・・ SQL側でも何か設定が必要なのでしょうか・・・?