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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: проблема с qftp методом get  (Прочитано 1779 раз)
koldun90
Крякер
****
Offline Offline

Сообщений: 345


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

Здравствуйте делаю qftp сервер без графики(консольное приложение)
есть проблемы со скачиванием файла не пойму что тут не так....
приходит пустой файл


main.cpp
Код
C++ (Qt)
#include <QCoreApplication>
#include <myftp.h>
int main(int argc, char *argv[])
{
   QCoreApplication a(argc, argv);
   myftp ftp;
   ftp.connectserver();  //конекчусь к серверу
   ftp.poluc(QString(""));  //
   return a.exec();
}

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


Код
C++ (Qt)
#include "myftp.h"
myftp::myftp(QObject *parent) :
   QObject(parent)
{
connect(&a,SIGNAL(listInfo(QUrlInfo)),this,SLOT(poluchob(QUrlInfo)));
}
 
 
void myftp::connectserver()
{
    std::cout<<"ÚÁÛÅÌ × ËÏÎÎÅËÔ="<<std::endl;
   a.connectToHost(QString("10.4.13.65"));
   a.login(QString("root"),QString("12345678"));
 
 
}
void myftp::poluc(QString ppka)
{
    std::cout<<"ÚÁÛÅÌ × ÐÏÌÕÞ="<<std::endl;
   a.cd(QString("ttt")); //ÐÅÒÅÈÏÄÉÍ × ÐÁÐËÕ ËÏÔÏÒÕÀ ÎÕÖÎÏ ÓËÏÐÉÒÏ×ÁÔØ
 
   a.list();  //ÐÏÌÕÞÁÅÍ ÓÐÉÓÏË ÏÂßÅËÔÏ×(ÆÁÊÌÏ× É ÐÁÐÏË) ÎÁÈÏÄÑÝÉÈÓÑ × ÄÁÎÎÏÊ ÐÁÐËÅ
 
  // std::cout<<ppka.toStdString()<<std::endl;
 
}
 
//ÐÏÌÕÞÁÅÍ ÉÍÑ ËÁÖÄÏÇÏ ÆÁÊÌÁ × ÐÁÐËÅ
void myftp::poluchob(QUrlInfo url)
{
 
 
 QString fail=url.name();
 std::cout<<"æÁÊÌ × ËÏÔÏÒÙÊ ÓËÁÞÉ×ÁÅÍ="<<QString(url.name()).toStdString()<<std::endl;
 QString outfail="/papkatest/"+url.name();
 std::cout<<"æÁÊÌ ÐÒÉÅÍÎÉË="+outfail.toStdString()<<std::endl;
 QFile g(outfail);
 if (g.open(QIODevice::WriteOnly))  // ÏÔËÒÙ×ÁÅÍ ÆÁÊÌ ÄÌÑÚÁÐÉÓÉÎÁ ÓÔÏÒÏÎÅ ËÌÉÅÎÔÁ
 {
    // std::cout<<"òÅÚÕÌØÔÁÔ="<<rez<<std::endl;
    // a.state();
     std::cout<<"óÏÓÔÏÑÎÉÅ="<<a.state()<<std::endl;
     int rez=a.get(fail,&g,QFtp::Binary);
     std::cout<<"òÅÚÕÌØÔÁÔ="<<rez<<std::endl;
 }
 //a.close();
 g.close();
 
}
 
void myftp::poluchif(int r)
{
   std::cout<<QString(r).toStdString()<<std::endl;
}
 
void myftp::kk(int a,bool ok)
{
 
}
 
void myftp::setip(QString ip)
{
   ipadreess=ip;
}
 
 
void myftp::loginparol(QString log,QString par)
{
   login=log;
   parol=par;
}
 
//ÕÓÔÁÎÁ×ÌÉ×ÁÅÍ ÐÁÐËÕ × ËÏÔÏÒÕÀ ÍÙ ÓËÏÐÉÒÕÅÍ ÆÁÊÌÙ
void myftp::ustanpapka(QString p)
{
   papka=p;
}
 
 
не пойму в чем дело...
подключаюсь к серверу и пытаюсь скопировать файл...
но файл приходит почему то пустой....
« Последнее редактирование: Ноябрь 13, 2015, 12:49 от koldun90 » Записан
koldun90
Крякер
****
Offline Offline

Сообщений: 345


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

никто не знает что может быть.....
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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