zoukankan      html  css  js  c++  java
  • FTP- Download, upload, Delete & find files

    
    
    Public Function Func_FTP(Operation,ServerName,UserName,Password,RemoteLocation,LocalLocation)
    
    
    'Set up the environment
    Const INTERNET_OPEN_TYPE_DIRECT = 1
    
    Extern.Declare micLong, "InternetOpen", "wininet.dll", "InternetOpenA", micString, micDWord, micString, micString, micDWord
    
    Dim hInternet
    hInternet = Extern.InternetOpen( "QTP_FTP", INTERNET_OPEN_TYPE_DIRECT, vbNullChar, vbNullChar, 0 )
    
    
    If hInternet = 0 Then
    
    Func_FTP= False
    
    Reporter.ReportEvent micFail, "InternetOpen", "Failed to setup environment."
    
    Exit Function
    
    end If
    
    
    
    ' Open ftp server
    Extern.Declare micLong, "InternetConnect", "wininet.dll", "InternetConnectA", micLong, micString, micInteger, micString, micString, micDWord, micDWord, micDWord
    
    Const INTERNET_DEFAULT_FTP_PORT = 22
    
    Const INTERNET_SERVICE_FTP = 1
    
    Dim hConnect
    
    hConnect = Extern.InternetConnect(hInternet,ServerName,INTERNET_DEFAULT_FTP_PORT,UserName,Password,INTERNET_SERVICE_FTP,0, 0 )
    
    If hConnect = 0 Then
    
    Func_FTP= False
    
    Reporter.ReportEvent micFail, "InternetConnect", "Failed to open internet connection."
    
    Exit Function
    
    end If
    
    Dim bRetval
    
    Select case lcase(Operation)
    
    Case "getfile"
    'Get file
    Extern.Declare micInteger, "FtpGetFile", "wininet.dll", "FtpGetFileA", micLong, micString, micString, micInteger, micDWord, micDWord, micDWord
    
    Const FTP_TRANSFER_TYPE_ASCII = 1
    
    bRetval = Extern.FtpGetFile( hConnect, RemoteLocation, LocalLocation, False, 0, FTP_TRANSFER_TYPE_ASCII, 0 )
    
    wait(2)
    
    If Not CBool( bRetVal ) Then
    
    Func_FTP= False
    
    Reporter.ReportEvent micFail, "FtpGetFile " & RemoteLocation, "Failed to download file. at " & LocalLocation
    
    Exit Function
    
    end If
    
    Case "putfile" 
    'put file
    Extern.Declare micInteger, "FtpPutFile", "wininet.dll", "FtpPutFileA", micLong, micString, micString, micDWord
    
    bRetval = Extern.FtpPutFile( hConnect,LocalLocation,RemoteLocation, 0 )
    
    wait(2)
    
    If Not CBool( bRetVal ) Then
    
    Reporter.ReportEvent micFail, "FtpPutFile " & LocalLocation , "Failed to upload file. at " & RemoteLocation
    
    Func_FTP= False
    
    Exit Function
    
    End If 
    
    
    Case "deletefile"
    'delete file
    Extern.Declare micInteger, "FtpDeleteFile", "wininet.dll", "FtpDeleteFileA",micLong,micstring
    
    bRetval =Extern.FtpDeleteFile(hConnect,RemoteLocation)
    
    wait(2)
    
    If Not CBool( bRetVal ) Then
    
    Reporter.ReportEvent micFail, "FtpPutFile", "Failed to delete file.--" & RemoteLocation
    
    Func_FTP= False
    
    Exit Function
    
    End If
    
    
    Case "findfile"
    
    Dim WIN32_FIND_DATA
    
    Extern.Declare micInteger, "FtpFindFirstFile", "wininet.dll", "FtpFindFirstFileA", micLong, micString,miclong, micDWord
    
    bRetval =Extern.FtpFindFirstFile(hConnect,RemoteLocation,WIN32_FIND_DATA,INTERNET_FLAG_NO_CACHE_WRITE)
    
    bRetval=left(bRetval,2)
    
    If bRetVal=0 Then
    
    Func_FTP= False
    
    Reporter.ReportEvent micFail, "File Not Found ", "File Not found ."
    
    Exit Function
    
    End If
    
    Case else 
    
    End Select
    
    
    
    'Close Connections
    Extern.Declare micInteger, "InternetCloseHandle", "wininet.dll","InternetCloseHandle", micLong
    
    Extern.InternetCloseHandle( hConnect )
    
    Extern.InternetCloseHandle( hInternet )
    
    
    End Function
    

      

    But  wininet.dll does't support sFTP

  • 相关阅读:
    yum与rpm常用命令
    centos7更改时区,同步时间
    剑指Offer45:扑克牌顺子(java)
    剑指Offer44:翻转单词顺序列(java)
    剑指Offer43:左旋转字符串(Java)
    剑指Offer42:和为S的两个数字(java)
    剑指Offer41:和为S的连续正数序列(Java)
    剑指Offer39:平衡二叉树(Java)
    剑指Offer40:数组中只出现一次的数字(Java)
    剑指Offer38:二叉树的深度(Java)
  • 原文地址:https://www.cnblogs.com/ellie-test/p/4683062.html
Copyright © 2011-2022 走看看