本帖最后由 leon460 于 2011-3-24 21:01 编辑
功能:发现ftp 服务器上目录中的某个文件,将其下载到本地一个目录下,并删除这个文件。
不过老是出现数组错误提示,,
谢谢各位的指导,,If Ping($Tencor6420IP) > 0 Then
If DriveStatus("\\172.21.17.124\6420") <> "ready" Then
Local $username124 = "test" ;定义 Tencor6420 的ftp用户名和密码
Local $pass124 = "123456"
TCPStartup() ;开始 tcp 服务
$ftpflag124=TCPConnect($Tencor6420IP,$ftpport)
If $ftpflag124 <> 0 Or $ftpflag124 <> -1 Then ;如果 telnet tencor6220#2 FTP端口 21 成功,则开始连接并下载数据
$Open = _FTP_Open('MyFTP Control Tencor6420') ;开始 一个ftp session
$Conn = _FTP_Connect($Open, $Tencor6420IP, $username124 , $pass124)
Local $h_Handle124
$aFile124 = _FTP_FindFileFirst($Conn, "/", $h_Handle124) ;查找一个 ftp 目录下的文件名
If $aFile124 <> 0 Then
Local $s_RemoteFile124="/" & $aFile124[10] ;定义远程ftp服务器的目录
Local $s_LocalFile124="d:\TencorData\Tencor6420" & $aFile124[10] ;定义本地存放路径及其文件名
If $aFile124[0] >= 1 Then
$messageGet124=_FTP_FileGet($Conn,$s_RemoteFile124,$s_LocalFile124) ;下载找到的远程ftp文件到本地
If $messageGet124=1 Then
$file=FileOpen(@ScriptDir & "\MovefileByFTP.txt",9)
FileWrite($file,_Now() & " 利用FTP将Tencor6420 测量数据 " & $aFile124[10] & "下载到对应的服务器中" & @CRLF)
$messageDel124=_FTP_FileDelete($Conn, $aFile124[10])
If $messageDel124 = 1 Then
FileWrite($file,_Now() & " 利用FTP将Tencor6420 测量数据 " & $aFile124[10] & "在FTP服务器上删除。" & @CRLF)
Else
FileWrite($file,_Now() & " 利用FTP将Tencor6420 测量数据 " & $aFile124[10] & "在FTP服务器上无法删除,请检查此文件。" & @CRLF)
EndIf
$FindClose = _FTP_FindFileClose($h_Handle124)
FileClose($file)
EndIf
EndIf
EndIf
_FTP_Close($Open)
EndIf
TCPShutdown()
EndIf
EndIf
|