crossplatform.ru

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


  Ответ в Проблема. Огромная проблема!
Введите ваше имя
Подтвердите код

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

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


Последние 10 сообщений [ в обратном порядке ]
Litkevich Yuriy Дата 18.12.2011, 9:05
  Vova, думай над названием тем.
crashsp Дата 17.12.2011, 21:50
  Тынц
Vova Дата 17.12.2011, 21:17
  crashsp, спасибо =)

Единственное, что радует, то что я код писать умею =) а то... тогда б получилось, что я дебил, не знающий не фига =)
crashsp Дата 17.12.2011, 20:31
 
Цитата(Vova @ 17.12.2011, 19:05) *
спасибо. проблема та же =(

команда вообще не выполняется, похоже =)

Попозже скину исходник
Vova Дата 17.12.2011, 19:05
  спасибо. проблема та же =(

команда вообще не выполняется, похоже =)
crashsp Дата 17.12.2011, 18:28
  Попробуйте так .
#include "widget.h"
#include "ui_widget.h"
#include <QFile>
#include <QTextStream>
#include <QMessageBox>

Widget::Widget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Widget)
{
    ui->setupUi(this);
    connect(&ftp,SIGNAL(done(bool)),this,SLOT(done_void()));
    connect(ui->send,SIGNAL(clicked()),this,SLOT(send_button_on_pushed()));
    connect(&ftp,SIGNAL(commandFinished(int,bool)),this,SLOT(slotCommandFinish(int,bool)));
}

/*соответственно этот слот сначала объявите у себя в widget.h*/
void Widget::slotCommandFinish( int id, bool error){
     if(id == QFtp::Put){
             file.close();
         QMessageBox::information(this,"Инфо","Загрузка завершена");
     }
        
}

void Widget::send_button_on_pushed()
{
     ftp.connectToHost("*********************");
     ftp.login("*****************","***************");


     file.setFileName(ui->name_lineedit->text()+".html");
    
     if(file.open(QIODevice::ReadOnly | QIODevice::Text))
     {
         ftp.put(&file,ui->name_lineedit->text());  
     }
     else{
         QMessageBox::critical(0,"Ошибка","Ошибка: невозможно открыть файл, возможно, он не создан или используется в другой программе.");
     }
}
void Widget::done_void()
{


}

Widget::~Widget()
{
    delete ui;
}
Vova Дата 17.12.2011, 18:15
  QFile::setFileName: File (gg.html) is already opened
QFile::setFileName: File (gg.html) is already opened
QFile::setFileName: File (gg.html) is already opened
QAbstractSocket::connectToHost() called when already looking up or connecting/connected to "upl.stg957.ifolder.ru"


он 4 раза подряд вызывается???
я вас не понял =)

#include "widget.h"
#include "ui_widget.h"
#include <Qfile>
#include <QTextStream>
#include <QMessageBox>
Qfile file;
Widget::Widget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Widget)
{
    ui->setupUi(this);
    connect(&ftp,SIGNAL(done(bool)),this,SLOT(done_void()));
    connect(ui->send,SIGNAL(clicked()),this,SLOT(send_button_on_pushed()));
    connect(&ftp,SIGNAL(commandFinished(int,bool)),this,SLOT(send_button_on_pushed()));

}

void Widget::send_button_on_pushed()
{
     ftp.connectToHost("upl.stg957.ifolder.ru");
     ftp.login("vovapodlesnov@gmail.com","123");
     ::::file.set::fileName(ui->name_lineedit->text()+".html");

     //Q::file ::file(ui->name_lineedit->text()+".html");
     if
     (::file.open(QIODevice::ReadOnly | QIODevice::Text))
     {
         ftp.put(&::file,ui->name_lineedit->text());
         QMessageBox::about(0,"",ftp.errorString());
         //::file.close();
     }
     else{
         QMessageBox::critical(0,"Ошибка","Ошибка: невозможно открыть файл, возможно, он не создан или используется в другой программе.");
     }
}
void Widget::command_fineshed_void()
{
     ::file.close();
}

void Widget::done_void()
{
     //ftp.deleteLater();

}

Widget::~Widget()
{
    delete ui;
}



ой =)

#include "widget.h"
#include "ui_widget.h"
#include <Qfile>
#include <QTextStream>
#include <QMessageBox>
Qfile file;
Widget::Widget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Widget)
{
    ui->setupUi(this);
    connect(&ftp,SIGNAL(done(bool)),this,SLOT(done_void()));
    connect(ui->send,SIGNAL(clicked()),this,SLOT(send_button_on_pushed()));
    connect(&ftp,SIGNAL(commandFinished(int,bool)),this,SLOT(command_fineshed_void()));

}

void Widget::send_button_on_pushed()
{
     ftp.connectToHost("upl.stg957.ifolder.ru");
     ftp.login("vovapodlesnov@gmail.com","123");
     ::::file.set::fileName(ui->name_lineedit->text()+".html");

     //Q::file ::file(ui->name_lineedit->text()+".html");
     if
     (::file.open(QIODevice::ReadOnly | QIODevice::Text))
     {
         ftp.put(&::file,ui->name_lineedit->text());
         QMessageBox::about(0,"",ftp.errorString());
         //::file.close();
     }
     else{
         QMessageBox::critical(0,"Ошибка","Ошибка: невозможно открыть файл, возможно, он не создан или используется в другой программе.");
     }
}
void Widget::command_fineshed_void()
{
     ::file.close();
}

void Widget::done_void()
{
     //ftp.deleteLater();

}

Widget::~Widget()
{
    delete ui;
}
crashsp Дата 17.12.2011, 17:54
  Еще перед тем что б закрыть файл надо сначала получить сигнал void commandFinished ( int id, bool error ) там выяснять по его id какая именно команда завершена и если это конец закачки то тогда закрывать файл.
Vova Дата 17.12.2011, 17:42
  да я знаю, что нет ошибки =) в этом вся проблема. да, да, передача 0

QAbstractSocket::connectToHost() called when already looking up or connecting/connected to "upl.stg957.ifolder.ru"
crashsp Дата 17.12.2011, 17:26
  По моему ошибка Unkown error как раз говорит что нет ошибки )).
Уберите QMessageBox::about(0,"",ftp.errorString());
есть сигнал void QFtp::dataTransferProgress ( qint64 done, qint64 total ) , соедините со своим слотом и там посмотрите передача точно не идет.
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 19.4.2024, 2:21