Russian Qt Forum
Ноябрь 25, 2024, 02:49 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: кроссплатформенный ftps клиент  (Прочитано 2349 раз)
koldun90
Крякер
****
Offline Offline

Сообщений: 345


Просмотр профиля
« : Ноябрь 12, 2015, 10:21 »

Здравствуйте собираюсь начать писать кроссплатформенный ftps( с использованием шифрования данных SSL/TLS) клиент
пишу под qt 4.8 подскажите какие классы использовать для создания кроссплатформенного ftp клиента....
клиент будет использоваться на windows и linu...
Записан
ksk-
Самовар
**
Offline Offline

Сообщений: 178



Просмотр профиля
« Ответ #1 : Ноябрь 12, 2015, 10:31 »

Смотри модуль QtNetwork. Найдёшь всё, что нужно.
Записан
koldun90
Крякер
****
Offline Offline

Сообщений: 345


Просмотр профиля
« Ответ #2 : Ноябрь 12, 2015, 12:37 »

решил начать как бы пробы c qftp создал небольшой проект но сигналы не ловятся
консольное приложение
main.cpp
Код
C++ (Qt)
#include <QCoreApplication>
#include <myftp.h>
 
int main(int argc, char *argv[])
{
   QCoreApplication a(argc, argv);
   myftp ftp;
   return a.exec();
}
 

myftp.h
Код
C++ (Qt)
#ifndef MYFTP_H
#define MYFTP_H
 
#include <QObject>
#include <QFtp>
#include <QUrlInfo>
#include <iostream>
 
class myftp : public QObject
{
   Q_OBJECT
public:
   explicit myftp(QObject *parent = 0);
   QFtp a;
 
signals:
 
public slots:
   void con();
   void poluchob(QUrlInfo);  //ÐÏÌÕÞÅÎÉÅ ÆÁÊÌÁ ÉÌÉÐÁÐËÉ ÎÁÈÏÄÑÝÉÓÑ × ÚÁÄÁÎÎÏÊ ÄÉÒÅËÔÏÒÉÉ
   void poluchif(int);
   void kk(int,bool);
 
 
 
};
 
#endif // MYFTP_H
 

myftp.cpp

Код
C++ (Qt)
#include "myftp.h"
 
myftp::myftp(QObject *parent) :
   QObject(parent)
{
//ËÏÎÓÔÒÕËÔÏÒ
   con();
}
 
//ËÏÎÎÅËÔ Ë ÓÅÒ×ÅÒÕ
 
void myftp::con()
{
   QFtp ftp;
   connect(&ftp,SIGNAL(stateChanged(int)),this,SLOT(poluchif(int)));
   connect(&ftp,SIGNAL(commandStarted(int)),this,SLOT(poluchif(int)));
   connect(&ftp,SIGNAL(commandFinished(int,bool)),this,SLOT(kk(int,bool)));
   connect(&ftp,SIGNAL(listInfo(QUrlInfo)),this,SLOT(poluchob(QUrlInfo)));
   ftp.connectToHost(QString("10.4.13.65"),21);
   ftp.login(QString("root"),QString("12345678"));
   ftp.cd("manag");
   ftp.list();
 
}
 
void myftp::poluchob(QUrlInfo url)
{
   std::cout<<QString(url.name()).toStdString()<<std::endl;
}
 
void myftp::poluchif(int r)
{
   std::cout<<QString(r).toStdString()<<std::endl;
}
 
void myftp::kk(int a,bool ok)
{
   //std::cout<<QString(url.name()).toStdString()<<std::endl;
}

проблема в том что не испускается ни один сигнал(не выполняется ни один слот) в чем может быть проблема....
делаю в линуксе...

может быть я не правильно использую сигнально слотовую систему в консольном приложении??
Записан
Hellraiser
Бывалый
*****
Offline Offline

Сообщений: 451


Просмотр профиля
« Ответ #3 : Ноябрь 12, 2015, 13:46 »

Не смущает, что объект класса QFtp самоудаляется после завершения работы конструктора myftp?
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.212 секунд. Запросов: 22.