VB6.0用掲示板の過去のログ(No.1)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [過去ログ] [管理用]

投稿日: 2003/03/18(Tue) 02:43
投稿者丸太
Eメール
URL
タイトルRe: ftpでサーバにファイルをPUT中に実行時エラー

> Win98環境。VB6.0で開発しています。
>
> Inetを使用して、サーバにファイルをftp転送したいのですが、
> 「実行時エラー 35764 最後の要求が実行中です」となってしまいます。
>
> 処理的には、サーバに転送したいファイルのディレクトリ、ファイル名を記述した
> ファイルリストを読み込んで、記述されて数だけ、ファイルをサーバにftp転送する
> というものです。転送するファイルが1つであれば、エラーにはならないのですが、
> 2つ以上転送、または、1度転送した後、画面を落とさず再度転送すると、エラーに
> なってしまいます。要求が実行時になるのは、ファイルをPUTするところです。
> 前の処理が終わるまで待機するようにしても、うまく動きません。
> 分かりにくい質問かもしれませんが、どなたか教えて頂けませんか。
>
> ソースは以下の通りです。
> ------------------------------------------------------
> Inet1.Execute , "PUT....(省略)"
>
>        Do
>            DoEvents
>        Loop Until InetState
>        
>        'ファイルリストをオープンし、ファイルパス、ファイル名を格納
>         Open strNewlist For Input As #2
>         Do
>             Input #2, strDir, strFname     '各項目に分けて読み込み
>             DoEvents
>                        
>             'ftpでPUTする時に元ファイル名に番号を採番する
>             Inet1.Execute , "PUT " & strDir & strSvdir & strSvfiles & strFname
>       ↑<この文で実行時エラーになります>
>
>             Do While Inet1.StillExecuting
>                 DoEvents ' 前の処理が終わるまで待機
>             Loop
>
>         Loop Until EOF(2)
>         Close #2

見た感じでは、1行目の PUT の実行の後に
Do While Inet1.StillExecuting 〜 のループを行っていないようですが、
これが問題ではありませんか?

もしそうでないとすると、これだけでは私には原因はつかめませんが、
別の攻め方として、
PUT する時に
On Error Goto でトラップして
35764 エラー だったら Do While Inet1.StillExecuting 〜をもう一度
やって Resume してみるとか。


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- Web Forum -