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

  • 相关阅读:
    Python之标示符和关键字
    Python之变量以及类型
    python之注释的分类
    Python的环境的搭建
    Python之第一个helloworld的代码
    Linux_ubuntu-命令系统管理
    Linux_ubuntu命令-用户、权限管理
    Linux-ubuntu命令-文件、磁盘管理
    Linux_Ubuntu命令概述
    Linux-Ubuntu文件权限
  • 原文地址:https://www.cnblogs.com/ellie-test/p/4683062.html
Copyright © 2011-2022 走看看