インターネットトランスファコントロール使用時の応答なしの原因を教えてください

このQ&Aのポイント
  • インターネットトランスファコントロールを使用して、FTPサーバのファイル一覧を表示するプログラムを作成しました。
  • フォームのコマンドボタンを押すとファイル一覧を取得できますが、その後フォームを閉じると応答がなくなってしまいます。
  • フォームのUnLoad時にはFTPサーバに「QUIT」コマンドを送信していますが、なぜ応答がないのか教えてください。
回答を見る
  • ベストアンサー

インターネットトランスファコントロール

お世話になっております。 インターネットトランスファコントロールを使用し、 FTPサーバのファイル一覧を表示するものを作成しました。 フォームにコマンドボタンを貼り付け、そのボタンを押すとファイル一覧を取得するというものです。 取得部分は問題なく動くのですが、その後フォームを閉じると1分ぐらい応答なしの状態になります。 コマンドボタンを押さずに(inetを使用せずに)フォームを閉じると問題なく終了できます。 応答なしになる原因を教えて頂きたいのですが・・・ フォームUnLoad時にはFTPサーバに"QUIT"コマンドは送っています。 環境はWinXP,VB6+SP5です。 よろしくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • todo36
  • ベストアンサー率58% (728/1234)
回答No.2

Set Nothingのお呪い

参考URL:
http://www.gj.il24.net/~nakasima/vb/tech/end/
REDSUNS
質問者

お礼

お返事遅くなりまして申し訳ありません。 何かが残るってことなんですね。 知らなかったので勉強になりました。 有り難う御座いました。

その他の回答 (1)

  • todo36
  • ベストアンサー率58% (728/1234)
回答No.1

>フォームUnLoad時にはFTPサーバに"QUIT"コマンドは送っています。 QUITが完了しないのにコントロールが破棄されるのでは? ファイル一覧を取得直後にQUITするとか

REDSUNS
質問者

補足

フォームアンロード時ではなく、ファイル一覧取得後、数秒待ち後にQUITさせてみました。inetのStateChangedで切断ができたときに、メッセージを出して確認しましたが無事、切断できているようです。 しかし、プログラム自体は「応答なし」の状態です。 なにかアドバイスありましたらよろしくお願い致します。

関連するQ&A

  • プロキシ経由でNet::FTPを利用する方法

    Net::FTPを利用してサーバ内にあるファイル一覧を取得しようとしています。 use Net::FTP $ftp = Net::FTP->new($hostname); $ftp->login($user,$pass); $file = $ftp->ls($holdr); $ftp->quit; とすれば同一ネットワーク内のファイル一覧は取得できました。ですがこのネットワークはプロキシサーバ内にあるためこのプログラムでは外のホストには接続できませんでした。どうすればプロキシを経由して外のホストに接続することができるでしょうか?

    • ベストアンサー
    • Perl
  • FTPのGetで応答がありません。

    FTPサーバはUnixでFTPクライアントはWindowsです。 単純にコマンドプロンプト画面からftpを行い、 サーバーからファイルを取得しようとしたところ、 応答がありません。 何が原因なのか皆目見当がつかない状況です。 考えられる原因を教えていただけないでしょうか?

  • FTPの連続実行でフリーズする

    UNIX + Cで作成しています。 あるプログラムで、FTPコマンド※を発行し、 遠隔のサーバ(サーバはLINUX)に置かれているファイルを取得しようとしています。 ※system("FTP ~~~ bye") 単発でファイルを取得する場合は問題ないのですが、 連続してファイルを取得しようとした場合、数時間動きつづけた後、 FTPコマンドを発行した状態でフリーズしてしまう現象が起こります。(100%かは分かりませんが、再現性はあります。) なぜこのような現象が起こるのでしょうか? 連続してのFTPコマンド発行は問題があるのでしょうか?

  • VB.NETでサーバーからFILEを取得する

    サーバー上にあるテキストファイルを FTPで取得したいのですが VBであればInetを使用して↓のように取得が可能 だったのですがVB.NETでのInetの使用方法がわかりません どなたかご存知の方がいらしたらご教授願えますか? また、別の方法がありましたらアドバイスをお願いします。 宜しくお願いいたします。 ==================== Dim FileName As String Inet.URL = "ftp://hostname/home/temp/" Inet.UserName = "username" Inet.Password = "password" Inet.Execute(, "GET test.txt " & FileName) Do While Inet.StillExecuting = True DoEvents() Loop MsgBox("ダウンロード終了") ====================

  • FFFTPでファイル一覧が表示されない

    FFFTPを使用してFTPサーバーに接続すると”ファイル一覧の取得は正常終了しました. (55 Bytes)”と表示されますがファイル名が全く表示されません。 「ファイル一覧をビュワーで表示」をするとメモ帳が立ち上がって下のように表示されます。 ビュワーでは表示されるにもかかわらずホストのエリアに表示されないのは何故か判りません。 FTPサーバは自作でローカルな環境で動いています。 コマンドはNLSTを使用しています。 通信ログでも正常に通信は行われているので有名なLIST,NLSTの問題ではないと思います。 なお自作のFTPサーバからはファイル一覧をデータポート(20)から 例えばhome.html<CRLF>のように一行づつ送信し最後は<CRLF>のみ送信しています。 以下はビュワーによるファイル一覧です。 home.html home.cgi tmc.gif megami.jpg 宜しくお願い致します。

  • Access2000でFTPの使い方について。

    Access2000のフォームから、実行のボタンをクリックするとFTPサーバに接続→ファイル取得→Accessテーブルに取込→FTPサーバのファイル削除→FTPサーバの接続切断という処理をしたいのですがどのようにしたらよいかわかりません。説明不足だとは思いますが、アドバイスを宜しくお願い致します。

  • FTPで存在しないファイルをGETしたときの動作について

    皆様 FTPコマンドで、FTPサーバ上に存在しないファイルをGETした場合の動作について教えてください。 Windowsのコマンドプロンプトで、FTPを使い、ファイルを取得しようとしています。 たまたま、取得対象ファイルがサーバ上に存在しない場合、サーバからのステータスコードは550であるのに、0バイトのファイルが保存されてしまいます。 これは、通常の動作でしょうか? (私の知る限り、0バイトファイルを生成するFTPクライアントは無いのですが…) あるいは、何か設定等に問題があるのでしょうか? 設定等に問題が有る可能性があれば、それを教えてください。 ちなみに環境は 【クライアント】 OS:WindowsXP SP2 【サーバ】 OS:Windows2003サーバ FTPサーバ:Microsoft FTP Service(IIS) です。 よろしくお願いします。

  • ftpクライアントでの接続後の、サーバ側のファイル一覧の取得方法

    c言語で、ftpプロトコルを使用し、ftpサーバまで接続することができたまでは良かったのですが、サーバ側のファイル一覧を取得する方法(フローチャート)が分かりません。 すみませんが、ご教授よろしくお願いいたします。

  • フォームの連携

    現在フォームからコマンドボタンよりもう一つフォームを呼び出すような制御をしています。 そこで呼び出したフォームから確定、キャンセルを選び元のフォームへ戻るようにしているのですが、戻ったときにキャンセルを押した場合は呼び出したフォームのみをUnloadして、確定の場合は二つのフォームをUnloadになるように制御をかけたいのですがうまくいきません>< どのような制御をかければうまくいきますか??

  • Inet で FTP のファイル送信したときのファイル属性

    Inet の FTP でサーバ(UNIX)へファイルを送信すると、 ファイル属性が(rw_r__r__)になります。 FFFTPを使っても同じなので、Inetの問題ではないのですが。 サーバ側の(.cshrc)ファイルでは、umaskは(002)です。 それなら、(rw_rw_r__)になっていいと思うのですが、どなたかどこに設定すればいいのか、ご存知でしたらお教えください。