- 締切済み
System.Net.Sockets.SocketException が発生
ちょっと困った事になってしまったので質問させて頂きます VB.NETで作成されたクライアント&サーバー型のシステムがあり 現在サーバー側はWindows2003サーバーで稼動しています 過去のテスト環境が使用できなくなった為にテストサーバーをを再構築することにりました 残されたドキュメントを参照しながら ・サーバープログラム導入 ・DBの設定 ・サービスの起動 ・ファイアウォールの解除 上記を行いクライアントから接続を試みたところ 下記のエラーが発生しました System.Net.Sockets.SocketException: 対象のコンピュータによって拒否されたため、接続できませんでした。 当方Windows2003に詳しくないので、何処の設定を変更すればよいのかアドバイスを頂きたく御願い致します 稼動中のサーバー:Windows2003 StandardEdition 再構築中のサーバー:Windows2003 R2 StandardEdition SP1 この違いも関係しているのでしょうか? 宜しく御願い致します
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- junbei
- ベストアンサー率55% (5/9)
そういう理解もごもっともなんですが・・・ つまり原因は旧サーバと新サーバ間に何かしら(設定?Ver差異?)の相違があって、 プログラムはその相違を吸収できる実装ではないのだと思うんです。 プログラムがバグかどうかはおいておいて、その吸収できていない相違は何なのか? これを追求するにはソースを解析するしかないと思います。(=デバッグ) ※ポイントになる部分だけでもいいんです。 というのも、ソースが公開されていない現状では、どんな実装がなされているのかは この投稿を読んでいる人には(私を含めて、他のどんな人でも)分からない訳です。 それをどんな書き方をされているのか推測で、あぁでもないこぉでも無いとやっても、、、 一向に目的に近づけないのをご理解していただけますでしょうか。。。 独自に実装したサービスではなく、標準の機能についての事柄であれば、 他の方からも参考になる意見はどんどん出ると思うのですが。
- junbei
- ベストアンサー率55% (5/9)
単純に「DBに接続できない」という類の問題ではなく、「vb.netで 作った(何かしらの)サービスを提供するプログラムへ、 クライアントから接続できない」ってことですよね?? 環境的要因というよりは、プログラムの書き方が大きく影響する 問題なんですね。。。絶対にバグが無いとでも言い切れない限りは ソースを公開しない限りおそらく解決できないと思いますが、、、 #サービスを提供しているPG、サービスへ接続しているPGとも
補足
Windows2003 StandardEdition で本稼動していてこちらには正常に接続でき、 同じ物を Windows2003 R2 StandardEdition SP1 にセットアップして動かないので環境の問題だとは思うのですが・・・ 御回答有難うございました
- junbei
- ベストアンサー率55% (5/9)
使用しているDB(エディションも)と、VB.NETからの接続方式(OleDBやODBCなど)についても 補足情報もらえますでしょうか? また、そのDBに付属するクライアントツールを使用した場合は、 (エラーが出るプログラムを動かしている端末から)接続できるのでしょうか? これらの情報でもっと回答がつきやすくなると思います。
補足
すいません、補足です 構成としましては |クライアント| - |サーバー| - |DB(Oracle8)| サーバー - DB はODBCで接続(正常) クライアント - サーバー間は TCP:8085 で接続(System.Net.Sockets.SocketExceptionが発生) サーバーで稼動しているサービスへ接続時にエラーが発生してしまいす (共にVB.NETで作成) LAN内でファイアウォールやポート制限は有りません 宜しく御願い致します
お礼
サービスからではなくGUIからの起動で試したところ正常にクライアントからの接続が出来ました 何故サービスからだと接続できないのか不明ですが、これで動作検証は出来ますので終わりにします