Здравствуйте. Я пишу FTP-клиент, решил использовать ф-ии Wininet так как мне сильной гибкости не нужно. Столкнулся с такой проблемой: Подключаюсь к своему локальному фтп-серверу все отлично работает, но когда пытаюсь подключится к серверу который у меня на хосте.. 220 ProFTPD 1.3.1 Server ready. USER NEBO 331 Password required for maestro PASS jrujqBQH 230 User NEBO logged in TYPE A 200 Type set to A PASV 227 Entering Passive Mode (104,138,151,106,140,14). LIST \ 150 Opening ASCII mode data connection for file list 450 \: No such file or directory И соединение обрывается. Тоесть фтп-сервер ругается на команду LIST \ . Есть ли в вининет возможность изменить эту команду на LIST -al ??? Прочитал msdn вроди нет такой возможности. Реализовано все стандартно:..... Код (Text): hInetHandle = InternetOpenA("ftp",INTERNET_OPEN_TYPE_DIRECT,NULL,NULL,0); hInetConnect = InternetConnectA(hInetHandle, szServer, // <- FTP Адрес atoi(szPort), // <- FTP порт lpLogin, // <- Логин lpPassord, // <- Пароль INTERNET_SERVICE_FTP, INTERNET_FLAG_PASSIVE, (DWORD)0); InternetConnectA - возвращает код ошибки. "No such file or directory"
_NEBO А ты где взял такую команду (LIST -al) ? В RFC765 ничего об этом не сказано, там просто не более того. Так что LIST / или ls и есть правильная команда. А как поменять в WinInet слеш на прямой не в курсе, возможно и никак. Пользуйся FtpCommand или FtpSetCurrentDirectory.
Уважаемые я же написал вот что как можно использовать FtpCommand если нет коннекта, а? когда подключается к этому серверу SmartFTP то он шлет єту каманду и все ок.