サーバー上のファイルを自動で自分のPCに落とすには?


KMW  2004-12-15 10:51:00  No: 118323  IP: [192.*.*.*]

はじめまして、VB初心者で現在アプリケーションを開発しているのですが、ちょっとつまずいてしまったので、教えてください。
  当方が行いたいのは、サーバー上にあるファイル(MDBファイル)を自身のPCの指定のフォルダにダウンロードしたいのですが、以下のような構文ではダメでしょうか?

If Dir$("C:\IVR\db") <> "" Then
        If Dir$("C:\IVR\db\xxxx.mdb") <> "" Then
            Kill "c:\IVR\db\xxxx.mdb"
        End If
    Else
        MkDir ("C:\IVR\db\")
    End If
        
    Me.Inet1.URL = "ftp://www.xxxxxxxx.jp"     ' FTPアドレスを指定
    Me.Inet1.UserName = "userxxxx"              ' ユーザ名を指定
    Me.Inet1.Password = "passxxxx"           ' パスワードを指定
    Me.Inet1.Protocol = icFTP                  ' 接続方法を指定
    Me.Inet1.Execute , "CD /xxxx/" 
    Do While Me.Inet1.StillExecuting
        DoEvents ' 前の処理が終わるまで待機
    Loop
    get_file = "xxxx.mdb"
    Me.Inet1.Execute , "GET " & get_file & " c:\IVR\db\" & get_file 'ファイル取得
    Do While Me.Inet1.StillExecuting
        DoEvents ' 前の処理が終わるまで待機
    Loop
    Me.Inet1.Execute , "CLOSE" ' 接続切断

実行すると「実行時エラー"75"  パス名が無効です」と表示されるのですが、単純にパスの指定がおかしいだけですかね?

編集 削除
nanashi  2004-12-15 11:14:52  No: 118324  IP: [192.*.*.*]

どの個所でエラーが出るんでしょうか?

編集 削除
ひろ  2004-12-15 11:37:51  No: 118325  IP: [192.*.*.*]

フォルダ有無チェックにバグがありますね。Dir関数の2番目の引数を指定しましょう。

編集 削除
KMW  2004-12-15 13:18:46  No: 118326  IP: [192.*.*.*]

nanasi様、ひろ様、早速のご返答ありがとうございます。
ひろ様のおっしゃる「Dir関数の2番目の引数」とはどういうことでしょうか?
すみませんが初心者で理解できませんので、よろしくお願いいたします。

編集 削除
de  2004-12-15 13:48:11  No: 118327  IP: [192.*.*.*]

Dirのヘルプを見てから質問しましょう。
あなたはDirの書式を知っているからDirを使ったんじゃないですか?
2番目の引数とは、その言葉どおり、2番目に書く引数のことです。

編集 削除
GOD  2004-12-15 14:09:05  No: 118328  IP: [192.*.*.*]

MkDirは多階層のフォルダは一気に作成できませんが大丈夫ですか?

編集 削除
いな  2004-12-15 20:42:57  No: 118329  IP: [192.*.*.*]

>ひろ様のおっしゃる「Dir関数の2番目の引数」とはどういうことでしょうか?
>すみませんが初心者で理解できませんので、よろしくお願いいたします。

Dir関数には、
普段設定する、省略できない第1引数の他に、
省略可能な第2引数があるので、それを指定してください。
ということです。

##これでわからなければごめん、チョット自分には荷が重いわ

編集 削除
ねろ  2004-12-16 11:40:11  No: 118330  IP: [192.*.*.*]

MakeSureDirectoryPathExists
この関数は、もしフォルダーが無ければ階層も含めて一挙に作ると言うものです。
これをはじめに入れておけば、フォルダーやファイルのチェックは要らないのでは。

編集 削除