none
SqlServer2008が入っているXPでTCP/IPを無効にした場合、VB6で作成したアプリを起動すると遅くなる。 RRS feed

  • 質問

  • SqlServer2008が入っているXPでTCP/IPを無効にした状態でVB6で作成したアプリを起動する、と起動が遅くなります。

    VB6で作成したプログラムでado2.6を使用し、起動時にサーバを見に行っているのですが

    TCP/IPを有効にしている時に比べて3~5秒近く長くなってしまいます。

    (Vistaの場合は変わらないのですが)

    何かご存知の方がいらっしゃいましたらよろしくお願いします。

     

    使用OS:WindowsXp(SP3)Professional

               SqlSever2008 Management Studio

    2010年3月31日 8:02

回答

  • Uttie さん、こんにちは。

    最初にTCP/IP で接続を試み、タイムアウトを待っている可能性もあるので、試しに接続文字列でプロトコルを指定してみてはいかがでしょうか?

    サーバー名パラメータを接続文字列で使用して、クライアント ネットワーク ライブラリを指定する方法
    http://support.microsoft.com/kb/313295/ja

    Vista だとなぜ早いのかはちょっとわからなかったのですが。。

    他にもなにかご存じの方がいらしたら、是非投稿してください。
    それでは!

    • 回答としてマーク 山本春海 2010年4月30日 2:08
    2010年4月6日 8:14

すべての返信

  • Uttie さん、こんにちは。

    最初にTCP/IP で接続を試み、タイムアウトを待っている可能性もあるので、試しに接続文字列でプロトコルを指定してみてはいかがでしょうか?

    サーバー名パラメータを接続文字列で使用して、クライアント ネットワーク ライブラリを指定する方法
    http://support.microsoft.com/kb/313295/ja

    Vista だとなぜ早いのかはちょっとわからなかったのですが。。

    他にもなにかご存じの方がいらしたら、是非投稿してください。
    それでは!

    • 回答としてマーク 山本春海 2010年4月30日 2:08
    2010年4月6日 8:14
  • 菊池俊介様ご返事ありがとうございます。

    教えていただいたページを参考にパラメータを変更して実行してみたところ、

    共有メモリだけ

    np(名前付きパイプ):サーバ名 → 早い

       lpc(共有メモリ):サーバ名    → 遅い

    共有メモリ・TCP/IP有効

    np(名前付きパイプ):サーバ名 → 早い

       lpc(共有メモリ):サーバ名    → 早い

    このような結果が出ました。

    また接続文字列に「Server=サーバ名」を使用していますが、ここを「DataSource=サーバ名」

    と変更したところ、接続が早くなりました。

    ServerとDataSourceでは接続時の処理に何か違いがあるのでしょうか?

    何かご存知でしたらよろしくお願いします。

    2010年4月8日 4:07