Jag får det att funka i kör men inte från ett annat program.
Här händer ingenting:
ShellExecute(Handle, 'open',pchar('Project1.exe login pass ip.com 21'),nil,nil, SW_SHOWNORMAL);
Om jag startar såhär så fungerar det:
ShellExecute(Handle, 'open',pchar('Project1.exe'),nil,nil, SW_SHOWNORMAL);
//kontakten med ftpn
idftp1.connect(true,3000);
//skapar alla mappar som behövs
for i := 0 to listbox2.items.Count - 1 do begin
try idftp1.MakeDir(listbox2.items[i]); except end;
end;
//laddar upp alla filer
for i := 0 to listbox1.items.Count - 1 do begin
IdFTP1.Put(mapp+listbox1.Items[i],listbox1.items[i]);
end;
idftp1.Quit;
Som du ser här har jag alla mappar upplistade i listbox2 och alla filer med sökväg upplistade i listbox1. Med denna kod som kan jag logga in på ftpn och loopen när den skapar mappar fungerar utan problem, jag får alla mappar på ftpn som de ska se ut. Men när den ska börja ladda upp filerna så hänger sig programmet och drar 100% CPU tills man avbryter den. Om man kollar på ftploggen så ser den ut som följande:
ftpn skrev:
2004-10-20 11:27:25 - login (xxx.xxx.xxx.xxx) > asked to create dir 'E:\ftptest\tempftpupload\Ny mapp\Ny mapp' --> Access allowed.
2004-10-20 11:27:25 - login (xxx.xxx.xxx.xxx) > made dir 'Ny mapp' in 'E:\ftptest\tempftpupload\Ny mapp\'.
2004-10-20 11:27:25 - login (xxx.xxx.xxx.xxx) > 257 '/tempftpupload/Ny mapp/Ny mapp': directory created.
2004-10-20 11:27:25 - login (xxx.xxx.xxx.xxx) > PORT 192,168,2,139,9,255
2004-10-20 11:27:25 - login (xxx.xxx.xxx.xxx) > 200 Port command successful.
2004-10-20 11:27:25 - login (xxx.xxx.xxx.xxx) > STOR \dft373_25.iso
2004-10-20 11:27:25 - login (xxx.xxx.xxx.xxx) > asked to upload '\dft373_25.iso' in 'E:\ftptest\' --> Access allowed.
2004-10-20 11:27:25 - login (xxx.xxx.xxx.xxx) > 150 Opening data connection for dft373_25.iso.
2004-10-20 11:27:40 - login (xxx.xxx.xxx.xxx) > 226 File received ok.
2004-10-20 11:27:40 - login (xxx.xxx.xxx.xxx) > finished uploading '\dft373_25.iso' in 'E:\ftptest\' - (11:27:41 - -0,001 KB - 0,000 KBytes/s).
Ftpn säger att filen är uppladdad men jag kan inte så någon fil på ftpn och programmet ligger och drar 100% CPU utan att skicka någon mer information till ftpn.
Måste tillägga att denna kod fungerar utmärkt om jag kör programmet på samma dator som ftpn ligger på, men när jag kör programmet från en annan dator så blir det fel vid filuppladdningen.