VB6.0でマイクロソフト・インターネット・トランスファ
・コントロールを使ってFTP転送をしたいのですが。送信
モードの指定(ASCIIかBINARY)はどのようにして設定す
ればよいのでしょうか?FTP転送はStateChangedメソッド
をつかっています。アドバイス宜しくお願いします。

A 回答 (2件)

レスがないので勝手にサンプルです。



現状の接続方法やASCIIでの取得方法がわからないので、Executeを使用してます。
どうやらOpenURLからやる方法もあるみたいだけど、もしUNIXコマンドを知ってるなら、こっちの方がわかりやすいと思います。僕自身UNIXは詳しくないのですが・・・でも最低限の命令後は学習しました。
FTPソフトを作成するにはUNIXの最低限の命令後の知識は必要だと思います。


Option Explicit

Private gFileLng  As Integer

Private Sub Command1_Click()
  Const URL = "ftp://USERNAME:PASSWORD@ftp.Microxxt.com/test1.g …
  
  gFileLng = FreeFile
  Open "C:\A.GIF" For Binary As #gFileLng
  With Inet1
    .Execute URL, "GET"
  End With
End Sub

Private Sub Inet1_StateChanged(ByVal State As Integer)
  Dim bytAry()  As Byte
  
  Select Case State
    Case icResponseCompleted
      bytAry = Inet1.GetChunk(1024, icByteArray)
      Do
        Put #gFileLng, , bytAry
        DoEvents
        bytAry = Inet1.GetChunk(1024, icByteArray)
        If UBound(bytAry) < 0 Then Exit Do
      Loop
      Close #gFileLng
      MsgBox "受信完了"
  End Select
End Sub
    • good
    • 0

Inet未経験者ですが・・・



アスキー/バイナリの切り替えはフラグではないようです。
データ自信をアスキーで扱うかバイナリで扱うかであって、その扱い方を切り替えなえなければいけないみたいです。

よくファイルの読み取りの時、
Open "FileNeme1" For Input As #1

Open "FileNeme1" For Binary As #1
というのがありますよね?

それと同じイメージでデータをバイナリで開いてそれを送信するようなイメージです。

ちょっと検証してみたいので、
接続
現在できているアスキーモードでの転送
部分のコードを見せてもらえませんか?
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード


このカテゴリの人気Q&Aランキング

おすすめ情報

カテゴリ