dpcapri Posted September 4, 2015 Share Posted September 4, 2015 Hello, i am new in this tool..I have a script who transfer some file between windows server and as400.the as400 is not on Unix mode, but as400 mode.All goes well for the connection, autentication, but when the script try to tranfer the file, we probably receive an error message we need to ignore...any body have experiencies with that ? I use the FTP_ex script.Thank you for any help. Link to comment Share on other sites More sharing options...
Jfish Posted September 4, 2015 Share Posted September 4, 2015 (edited) Could you post your code (without your credentials) - preferably using the <> code tags and explain the exact error message you are receiving?This is not a strong area for me but I'll take a shot ... it looks like the function you are using is using WinInet.Func __FTP_Init() $__g_hWinInet_FTP = DllOpen('wininet.dll') EndFunc ;==>__FTP_InitIf you look here at MSDN you can see how to ignore various types of WinInet error messages (search for "ignore"). I still think you probably need to know the error message in question to figure out which flags to use (and I could be wrong):https://msdn.microsoft.com/en-us/library/windows/desktop/aa385328(v=vs.85).aspx Edited September 4, 2015 by Jfish Build your own poker game with AutoIt: pokerlogic.au3 | Learn To Program Using FREE Tools with AutoIt Link to comment Share on other sites More sharing options...
dpcapri Posted September 7, 2015 Author Share Posted September 7, 2015 Hello,See below the script : Just the function FTP PUT.I don't know where i can insert following the type of server Wintel, unix or AS400 mode.My problem is with AS400 mode, we need to insert the command QUOTE SITE NAMEFMT 1 to be sure to have the good directory format. ;======================================; Fonction FTP Put or Get *************;======================================Func _FTP() ; Ouverture de session FTP _FileWriteLog($logPath & $logName, @CRLF) _FileWriteLog($logPath & $logName, "***************************************") _FileWriteLog($logPath & $logName, "ETAPE " & $i & "." & $i & " : Ouverture de session FTP") $FTPOpenError = _FTP_Open(StringTrimRight($IniName,4)) If $FTPOpenError = 0 Then $Message[$i][$i] = "ERREUR ETAPE " & $i & "." & $i & " : " & @LF & "Impossible d'ouvrir une session FTP" _FileWriteLog($logPath & $logName, "-----") _FileWriteLog($logPath & $LogName, "ERREUR ETAPE " & $i & "." & $i & " : impossible d'ouvrir une session FTP") _FileWriteLog($logPath & $logName, "-----") $GlobalMessage = $GlobalMessage & @CRLF & $Message[$i][$i] Else _FileWriteLog($logPath & $logName, @CRLF) _FileWriteLog($logPath & $logName, "***************************************") _FileWriteLog($logPath & $LogName, "Session FTP Ouverte") ; Connexion au serveur FTP Distant $FTPServerIP = IniRead($iniPath, "FTPSERVER", "IP", "default") $FTPUser = IniRead($iniPath, "FTPSERVER", "Username", "default") _FileWriteLog($logPath & $logName, "Connexion au serveur FTP : " & $FTPServerIP & " avec le compte : " & $FTPUser) $FTPPass = Ini_ReadCrypted($Cle, $iniPath, "FTPSERVER", "Password") $FTPConnectError = _FTP_Connect($FTPOpenError, $FTPServerIP, $FTPUser, $FTPPass) If $FTPConnectError = 0 Then $Message[$i][$i+1] = "ERREUR ETAPE " & $i & "." & $i+1 & " : " & @CRLF & "Le nom d'utilisateur : " & $FTPUser & " ou le mot de passe de connexion au serveur FTP " & $FTPServerIP & " est incorrect" _FileWriteLog($logPath & $logName, "-----") _FileWriteLog($logPath & $logName, "ERREUR ETAPE " & $i & "." & $i+1 & " : le nom d'utilisateur : " & $FTPUser & " ou le mot de passe de connexion au serveur FTP " & $FTPServerIP & " est incorrect") _FileWriteLog($logPath & $logName, "-----") $GlobalMessage = $GlobalMessage & @CRLF & $Message[$i][$i+1] Else ; Changement de répertoire FTP _FileWriteLog($logPath & $logName, @CRLF) _FileWriteLog($logPath & $logName, "----------------------------------------") If $ETAPE[$i] = "FTP_Put" Then ; si fichiers vers serveur FTP, sélectionner le répertoire de dépot : ***** SI COPIER FICHIER VERS LE SERVEUR FTP If $Dest_Folder <> "" Then _FileWriteLog($logPath & $logName, "Accès au répertoire FTP : " & $Dest_Folder) $FTPChangeDirError = _FTP_DirSetCurrent($FTPConnectError, $Dest_Folder) If $FTPChangeDirError = 0 Then $Message[$i][$i+2] = "ERREUR ETAPE " & $i & "." & $i+2 & " : " & @CRLF & "Le répertoire de dépôt FTP n'est pas accessible" _FileWriteLog($logPath & $logName, "-----") _FileWriteLog($logPath & $logName, "ERREUR ETAPE " & $i & "." & $i+2 & " : le répertoire de dépôt FTP n'est pas accessible") _FileWriteLog($logPath & $logName, "-----") $GlobalMessage = $GlobalMessage & @CRLF & $Message[$i][$i+2] Else _FileWriteLog($logPath & $logName, "Le répertoire de dépôt FTP est : " & $Dest_Folder) EndIf EndIf ; Transfert des fichiers vers le serveur FTP Select Case $List[0] = "1" ; un seul fichier _FileWriteLog($logPath & $logName, @CRLF) _FileWriteLog($logPath & $logName, "----------------------------------------") _FileWriteLog($logPath & $logName, "Transfert du fichier vers le serveur " & $FTPServerIP & " ------") $FTPFilePutError = _FTP_FilePut($FTPConnectError, $Source_Folder & $List[1] , $Dest_Folder) If $FTPFilePutError = 0 Then $Message[$i][$i+3] = "ERREUR ETAPE " & $i & "." & $i+2 & " : " & @CRLF & "Le fichier " & $Source_Folder & $List[1] & " n'a pas pu être transféré sur le serveur " & $FTPServerIP _FileWriteLog($logPath & $logName, "-----") _FileWriteLog($logPath & $logName, "ERREUR ETAPE " & $i & "." & $i+2 & " : le fichier " & $Source_Folder & $List[1] & " n'a pas pu être transféré sur le serveur " & $FTPServerIP) _FileWriteLog($logPath & $logName, "-----") $GlobalMessage = $GlobalMessage & @CRLF & $Message[$i][$i+3] Else _FileWriteLog($logPath & $logName, "-----") _FileWriteLog($logPath & $logName, "Le fichier " & $Source_Folder & $List[1] & " a été transféré sur le serveur " & $FTPServerIP & " dans le dossier " & $Dest_Folder) _FileWriteLog($logPath & $logName, "-----") EndIf Case $List[0] > "1" ; plus d'un fichier For $k = 1 To $List[0] _FileWriteLog($logPath & $logName, @CRLF) _FileWriteLog($logPath & $logName, "----------------------------------------") _FileWriteLog($logPath & $logName, "Transfert des fichiers vers le serveur " & $FTPServerIP & " ------") $FTPFilePutError = _FTP_FilePut($FTPConnectError, $Source_Folder & $List[$k], $Dest_Folder) If $FTPFilePutError = 0 Then $Message[$i][$i+3] = $Message[$i][$i+3] & @CRLF & "ERREUR ETAPE" & $i & "." & $i+2 & " : " & @CRLF & "Le fichier " & $Source_Folder & $List[$k] & " n'a pas pu être transféré sur le serveur " & $FTPServerIP & " dans le dossier " & $Dest_Folder & @LF _FileWriteLog($logPath & $logName, "-----") _FileWriteLog($logPath & $logName, "ERREUR ETAPE " & $i & "." & $i+2 & " : le fichier " & $Source_Folder & $List[$k] & " n'a pas pu être transféré sur le serveur " & $FTPServerIP & " dans le dossier " & $Dest_Folder) _FileWriteLog($logPath & $logName, "-----") $GlobalMessage = $GlobalMessage & @CRLF & $Message[$i][$i+3] Else _FileWriteLog($logPath & $logName, "-----") _FileWriteLog($logPath & $logName, "Le fichier " & $Source_Folder & $List[$k] & " a été transféré sur le serveur " & $FTPServerIP & " dans le dossier " & $Dest_Folder) _FileWriteLog($logPath & $logName, "-----") EndIf Next EndSelect EndIf If $ETAPE[$i] = "FTP_Get" Then ; si fichiers vers serveur FTP, sélectionner le répertoire source FTP : ***** SI COPIER FICHIER DEPUIS LE SERVEUR FTP If $Dest_Folder <> "" Then _FileWriteLog($logPath & $logName, "Accès au répertoire FTP : " & $Source_Folder) $FTPChangeDirError = _FTP_DirSetCurrent($FTPConnectError, $Source_Folder) If $FTPChangeDirError = 0 Then $Message[$i][$i+2] = "ERREUR ETAPE " & $i & "." & $i+2 & " : " & @CRLF & "Le répertoire source FTP n'est pas accessible" _FileWriteLog($logPath & $logName, "-----") _FileWriteLog($logPath & $logName, "ERREUR ETAPE " & $i & "." & $i+2 & " : le répertoire source FTP n'est pas accessible") _FileWriteLog($logPath & $logName, "-----") $GlobalMessage = $GlobalMessage & @CRLF & $Message[$i][$i+2] Else _FileWriteLog($logPath & $logName, "Le répertoire source FTP est : " & $Source_Folder) EndIf EndIf ; Lister les fichiers du dossier FTP si FTP Get $List = _FTP_ListToArray($FTPConnectError, 2) ; Transfert des fichiers depuis le serveur FTP Select Case $List[0] = "1" ; un seul fichier _FileWriteLog($logPath & $logName, @CRLF) _FileWriteLog($logPath & $logName, "----------------------------------------") _FileWriteLog($logPath & $logName, "Transfert du fichier depuis le serveur " & $FTPServerIP & " ------") $FTPFileGetError = _FTP_FileGet($FTPConnectError, $Source_Folder & $List[1] , $Dest_Folder) If $FTPFileGetError = 0 Then $Message[$i][$i+3] = "ERREUR ETAPE " & $i & "." & $i+2 & " : " & @CRLF & "Le fichier " & $Source_Folder & $List[1] & " n'a pas pu être transféré sur le serveur " & $FTPServerIP _FileWriteLog($logPath & $logName, "-----") _FileWriteLog($logPath & $logName, "ERREUR ETAPE " & $i & "." & $i+2 & " : le fichier " & $Source_Folder & $List[1] & " n'a pas pu être transféré sur le serveur " & $FTPServerIP) _FileWriteLog($logPath & $logName, "-----") $GlobalMessage = $GlobalMessage & @CRLF & $Message[$i][$i+3] Else _FileWriteLog($logPath & $logName, "-----") _FileWriteLog($logPath & $logName, "Le fichier " & $Source_Folder & $List[1] & " a été transféré sur le serveur " & $FTPServerIP & " dans le dossier " & $Dest_Folder) _FileWriteLog($logPath & $logName, "-----") EndIf Case $List[0] > "1" ; plus d'un fichier For $k = 1 To $List[0] _FileWriteLog($logPath & $logName, @CRLF) _FileWriteLog($logPath & $logName, "----------------------------------------") _FileWriteLog($logPath & $logName, "Transfert des fichiers depuis le serveur " & $FTPServerIP & " ------") $FTPFileGetError = _FTP_FileGet($FTPConnectError, $Source_Folder & $List[$k], $Dest_Folder) If $FTPFileGetError = 0 Then $Message[$i][$i+3] = $Message[$i][$i+3] & @CRLF & "ERREUR ETAPE" & $i & "." & $i+2 & " : " & @CRLF & "Le fichier " & $Source_Folder & $List[$k] & " n'a pas pu être transféré depuis le serveur " & $FTPServerIP & " dans le dossier " & $Dest_Folder & @LF _FileWriteLog($logPath & $logName, "-----") _FileWriteLog($logPath & $logName, "ERREUR ETAPE " & $i & "." & $i+2 & " : le fichier " & $Source_Folder & $List[$k] & " n'a pas pu être transféré sur le serveur " & $FTPServerIP & " dans le dossier " & $Dest_Folder) _FileWriteLog($logPath & $logName, "-----") $GlobalMessage = $GlobalMessage & @CRLF & $Message[$i][$i+3] Else _FileWriteLog($logPath & $logName, "-----") _FileWriteLog($logPath & $logName, "Le fichier " & $Source_Folder & $List[$k] & " a été transféré sur le serveur " & $FTPServerIP & " dans le dossier " & $Dest_Folder) _FileWriteLog($logPath & $logName, "-----") EndIf Next EndSelect EndIf ;Fermeture de session FTP distant $FTPCloseError = _FTP_Close($FTPOpenError) If $FTPCloseError = "0" Then $Message[$i][$i+4] = "ERREUR ETAPE " & $i & "." & $i+4 & " : La session FTP ne parvient pas à se fermer" _FileWriteLog($logPath & $logName, "-----") _FileWriteLog($logPath & $logName, "ERREUR ETAPE " & $i & "." & $i+4 & " : Impossible de fermer la session FTP") _FileWriteLog($logPath & $logName, "-----") $GlobalMessage = $GlobalMessage & @CRLF & $Message[$i][$i+4] Else _FileWriteLog($logPath & $logName, "-----") _FileWriteLog($logPath & $logName, "Session FTP Fermée *************") _FileWriteLog($logPath & $logName, "***************************************") EndIf EndIf EndIfEndFunc Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now