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

投稿日: 2003/05/14(Wed) 16:07
投稿者emi
Eメール
URL
タイトルWininet.dllでのアップロード

以前、「インターネットトランスファコントロールでのアップロード」について
同じような質問をしたものです。

先日は、Wininet.dllを使用したら成功したと書き込みましたが
その後やはりFTPを使用したアップロードを行った後、
プログラム(フォーム)を終了しようとするとVB、ソフトともに固まってしまいました。

しかし、固まらずに終了することもあります。
また、別のPCで試したところ一台が成功。一台が失敗。というような感じでした。
安定してアップロードが行えるようにしたいのですが。
どなたか、知恵を貸していただけないでしょうか?

開発環境:VB6
OS:WIN2000
です。

たびたび同じ質問ですいません。よろしくお願いします。
========コードです。==============
Public Function FtpPut(sFtpSvr As String, sUserID As String, sPassword As String, _
        sRfile As String, sLfile As String) As Boolean
    
    Dim hInet As Long       'インターネット接続ハンドル
    Dim hFTP As Long        'FTP接続ハンドル
    Dim Ingret As Long
    
    FtpPut = True
    
    On Error GoTo ErrHandler
    
    hInet = InternetOpen(vbNullString, _
                            INTERNET_OPEN_TYPE_PRECONFIG, _
                            vbNullString, _
                            vbNullString, _
                            0&)
    
    If hInet = 0 Then
        Debug.Print "オープン失敗"
        FtpPut = False
        Exit Function
    Else
        Debug.Print "オープン成功"
    End If
    
    hFTP = InternetConnect(hInet, sFtpSvr, INTERNET_DEFAULT_FTP_PORT, _
                            sUserID, sPassword, INTERNET_SERVICE_FTP, _
                            0&, 0&)
    
    If hFTP = 0 Then
        Debug.Print "コネクト失敗"
        FtpPut = False
        Exit Function
    Else
        Debug.Print "コネクト成功"
    End If
    
    Ingret = FtpPutFile(hFTP, sLfile & vbNullChar, _
                    sRfile & vbNullChar, _
                    FTP_TRANSFER_TYPE_BINARY, _
                    0&)
    If Ingret = 0 Then
        Debug.Print "アップ失敗"
        FtpPut = False
    Else
        Debug.Print "アップ成功"
    End If
    
    lngret = InternetCloseHandle(hFTP)
    If Ingret = 0 Then
        Debug.Print "クローズ失敗ftp"
        FtpPut = False
    Else
        Debug.Print "クローズ成功ftp"
    End If
    
    Ingret = InternetCloseHandle(hInet)
    If Ingret = 0 Then
        Debug.Print "クローズ失敗inet"
        FtpPut = False
    Else
        Debug.Print "クローズ成功inet"
    End If
    
    Exit Function
    
'------------------
'   エラー処理
'------------------
ErrHandler:
    
    FtpPut = False
    Debug.Print "エラー" & Error(Err)
    Exit Function

End Function

=====ここまで=====


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

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

- Web Forum -