crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в Вопрос по методу get класса QFTp
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
ViGOur Дата 17.11.2015, 16:27
  Обрабатывай сигнал QFtp::commandFinished, чтобы посмотреть как отрабатывает QFtp::get.
И если возникла ошибка получи (error = true), то будет понятно, что ты не так делаешь.
koldun90 Дата 13.11.2015, 22:34
  здравствуйте пишу клиент на qftp к серверу vsftpd
проблема заключается в следующем что метод get качает файлы но почему то файлы -приемники пустые не могу понять почему вот код проекта

main.cpp
#include <QCoreApplication>
#include <myftpcl.h>

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);
    myftpcl ftp;
    ftp.conect();
    ftp.cot();
    return a.exec();
}

myftpcl.h
#ifndef MYFTPCL_H
#define MYFTPCL_H

#include <QObject>
#include <QFtp>

class myftpcl : public QObject
{
    Q_OBJECT
public:
    explicit myftpcl(QObject *parent = 0);
    QFtp a;
    QString login;
    QString parol;
    QString ipadress;

signals:

public slots:
    void getfails(QUrlInfo);
    void conect();
    void cot();
    void chy(int f);
};

#endif // MYFTPCL_H


myftpcl.cpp
#include "myftpcl.h"
#include <QDir>
#include <iostream>
myftpcl::myftpcl(QObject *parent) :
    QObject(parent)
{
    QDir c;
    c.mkdir("/pakatest");


}

void myftpcl::getfails(QUrlInfo url)
{
    std::cout<<url.name().toStdString()<<std::endl;
    QString fail="/pakatest/"+url.name();
    QFile g(fail);
    if (g.open(QIODevice::ReadWrite | QIODevice::Truncate))
    {
        a.get(url.name(),&g,QFtp::Binary);
    }
    g.close();
    //a.close();
}

void myftpcl::conect()
{
    connect(&a,SIGNAL(stateChanged(int)),this,SLOT(chy(int)));
    a.connectToHost(QString("192.168.160.135"));
    a.login(QString("root"),QString("12345678"));


}

void myftpcl::cot()
{
    connect(&a,SIGNAL(listInfo(QUrlInfo)),this,SLOT(getfails(QUrlInfo)));
    a.list();
}

void myftpcl::chy(int f)
{
    std::cout<<f<<std::endl;


}

я не понимаю почему он не скачивает файлы с сервера а точнее качает но получаются пустые данные(все файлы 0 байт)
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 26.2.2021, 3:55