Название: Вопрос по QFtp, и маленький вопросик по QTcpServer Отправлено: G-virus от Апрель 15, 2010, 23:58 Всем привет. Два легких вопроса.
1) QFtp. В конструкторе класса выполняю ftp.connectToHost() и ftp.login(). в деструкторе ftp.close() и ftp.disconnect(). Вопрос: В функциях описанных в этом классе есть функции для загрузки и скчивания файла. Первый раз загружаю или скачиваю - все ок. При втором разе ничего не скачивает или не загружается, что делаю не так? 2)QTcpServer. Создаю объект server. Какой метод проверяет, подключен ли к данному QTcpServer клиент? Рылся - не нашел ;D Заранее спасибо :) Название: Re: Вопрос по QFtp, и маленький вопросик по QTcpServer Отправлено: SimpleSunny от Апрель 16, 2010, 00:03 1. Без помощи экстрасенсов никуда =). Посмотри сниффером трафик.
2. void QTcpServer::newConnection () [signal] или bool QTcpServer::hasPendingConnections () const [virtual]. Или имелось в виду подключен какой-то конкретный клиент? Если да, то то проще самому реализовать запоминалку подключенных клиентов. Хотя можно пробежаться по детям QTcpServer, найти QTcpSocket и проверять на конкретного клиента. Название: Re: Вопрос по QFtp, и маленький вопросик по QTcpServer Отправлено: Akaiten от Апрель 16, 2010, 08:41 1.а Возможно у сервера стоит timeout, и он отключает клиента.
1.б Помню возникал проблемы с QFtp при нескольких последовательных запросах, конкретно не помню как разрешил, но если ты вызываешь ftp команды (QFtp::get, QFtp::put и т.п.) из слота-обработчика сигнала от QFtp, то попробый вызвать их в другом месте (не в обработчике сигнала от QFtp) или хотябы через QTimer::singleShot(0, ...). Название: Re: Вопрос по QFtp, и маленький вопросик по QTcpServer Отправлено: G-virus от Апрель 16, 2010, 12:21 Или имелось в виду подключен какой-то конкретный клиент? нет нет, именно требовалось проверять, к данному серверу подключено что-то или нет :) Спасибо 1.а Возможно у сервера стоит timeout, и он отключает клиента. 1.б Помню возникал проблемы с QFtp при нескольких последовательных запросах, конкретно не помню как разрешил, но если ты вызываешь ftp команды (QFtp::get, QFtp::put и т.п.) из слота-обработчика сигнала от QFtp, то попробый вызвать их в другом месте (не в обработчике сигнала от QFtp) или хотябы через QTimer::singleShot(0, ...). А какая собственно разница? Что в QTimer, что в слоте. QTmer то все равно вызовет слот :) Или я чего-то не понял? Название: Re: Вопрос по QFtp, и маленький вопросик по QTcpServer Отправлено: Akaiten от Апрель 16, 2010, 13:20 А какая собственно разница? Что в QTimer, что в слоте. QTmer то все равно вызовет слот :) Или я чего-то не понял? Я имел ввиду не вызывать новые команды QFtp в обработчике сигнала QFtp::done или QFtp::commandFinished и т.п. Название: Re: Вопрос по QFtp, и маленький вопросик по QTcpServer Отправлено: G-virus от Апрель 16, 2010, 13:46 Видимо были какие-то лаги. Опять запустил, потестил - все пашет.
|