|
■No52080 (はつね さん) に返信 > (1) > 「リモートHTTP接続を有効」は管理画面をリモートから使うときの話でプログラム空のときは関係ありません。 > リモートからの接続時にはどのような文字列で接続しているのでしょうか。 using Oracle.DataAccess.Client; using Oracle.DataAccess.Types; public static bool DBA(string DBN, Object[] NJ, int FG, int MLO, int TLO) { using (OracleConnection con = new OracleConnection()) { con.ConnectionString = MKST.UID; try { con.Open(); } catch { MessageBox.Show("データベースの接続に失敗しました。"); return false; }
int X = 0; using (OracleCommand cmd = con.CreateCommand()) { cmd.CommandText = "insert into " + DBN + "(" + MKST.KSST(DBN) + ") values(" + CDBS.VAST(FG, NJ, MLO, TLO) + ")"; try { X = cmd.ExecuteNonQuery(); return true; } catch (Exception EX) { MessageBox.Show("「" + EX.Message + "」でデータの追加はできませんでした。"); return false; } } } } これはデータ書き込み用に作ったものですがこれで接続しています。 > (2) > Oracle Database 10g Express Clientは.NET Framework 1.1用なのでVisual Studio 2008で作成したC# > からは接続できないと思うのですが。 > もしかしたら、C#でプログラムを作り使用したパソコンには別にOracle Client、ODAC、ODP.NETなどを > インストールしていたりしませんか? プログラムは会社のパソコンでXP+VB2008C#で作成しています。ただ会社のOracleは2000server+Oracle10g10.2でそれに接続するため10g用のOracle Clientを入れてありそのODP.NETを使用しています。 が家のパソコンはOracle Database 10g Express ClientとOracleJapanからダウンロードしてきたODP.NETをインストールしてあります。 > (3) > Oracle Database 10g Expressが動作しているパソコンのファイアウォールが動いているならば、一度 > とめてみたから接続できるか確認してみてください。 > 接続できたら、Oracle Database 10g Expressが使っているポートをあける設定をしてファイアウォー > ルを起動しておく事をおわすれなく。 > 帰ってから試してみます。
補足説明しますと。 会社ではXP_SP3+VS2008C#で開発。 会社のサーバーはWin2000server+oracle10g10.2を使っていますので開発機にはoracle10gのOracle Clientが入っています。できたプログラムの続きを家でやるのに 家のXP_SP3+VS2008C#に10g Express本体を入スタンドアローンでやっていました。この状態では問題なく動いていました。で今度10g Expressでサーバー、クライアントでやれるプログラムを作ることになり家のデータ蓄積用のXP_SP3に10g Express本体を入れプログラム作っているパソコンの10g Expressを消して10g ExpressClientを入れてテストしたら接続に失敗しましたというエラーをだしてつなげないという現象がでてしまったわけです。その後oracleJapanからODP.NETをダウンロードして入れてみたりしましたがつなげません。で困って相談しました。
|