J'ai écrit une application Delphi 5 qui utilise TIdFTP. ça fonctionne très bien depuis des années. Son seul but est de télécharger un fichier Excel.application en utilisant TIdFTP ne migrant pas de Delphi 5 à Delphi 2009 ... correctifs corrompus
object ftp: TIdFTP
OnStatus = ftpStatus
IPVersion = Id_IPv4
AutoLogin = True
Host = 'somewhere.ca'
Passive = True
Password = 'guess'
TransferType = ftBinary
Username = 'xray'
ProxySettings.ProxyType = fpcmNone
ProxySettings.Port = 0
end
J'ai récemment migré vers Delphi 2009 depuis que j'ai rechargé ma machine et que Delphi 5 est parti maintenant. L'application semble toujours fonctionner mais la plupart du temps, grâce au fichier de 1,5 Mo, le fichier est corrompu. il semble que les octets ont été supprimés et que le fichier téléchargé est plus court que l'original (environ 200 octets). Ma première pensée a été le type de transfert, donc je l'ai mis en binaire mais au-delà, je ne sais pas.
des idées?
merci! mp
merci pour vos commentaires! J'utilise 10.2.5 fourni avec d2009. Je suis réticent à utiliser le dernier depuis que je m'attends à ce que tous les problèmes de la copie de l'installation d2009 de codegear soient inclus dans une mise à jour de codegear. aussi, (comme JCL, JVCL) je suis prudent à propos de leur mise à niveau car un pourrait provoquer des problèmes. TRÈS INTÉRESSANT: Les fichiers EXE et d'autres téléchargements Excel bien! J'ai fait un SaveAs à un nom différent et qui télécharge correctement tant qu'il a un nom différent ... ne sent plus comme un problème d'Indy. merci François! –
10.2.5 est très ancien et ne supporte pas réellement les fonctionnalités Unicode de D2009 +. CodeGear n'inclut jamais les mises à jour d'Indy dans leurs mises à jour IDE, car les mises à jour doivent rester compatibles avec les interfaces (et les mises à jour d'Indy ne sont généralement pas compatibles avec l'interface). Vous pouvez supprimer en toute sécurité l'installation Indy de CodeGear et installer une version plus récente manuellement. La version actuelle d'Indy est 10.5.7. –