crossplatform.ru

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


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

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
Теги
Выровнять по центру
Ссылка на тему
Ссылка на сообщение
Скрытый текст
Сокращение
Код с подсветкой
Offtopic
 
Удалить форматирование
Спец. элементы
Шрифт
Размер
 
Цвет шрифта
 
Отменить ввод
Вернуть ввод
Полужирный
Курсив
Подчеркнутый
 
 
Смайлики
Вставить изображение
Вставить адрес электронной почты
Цитата
Код
Раскрывающийся текст
 
Увеличить отступ
По левому краю
По центру
По правому краю
Вставить список
Вставить список

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


Последние 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 Рейтинг@Mail.ru Текстовая версия Сейчас: 10.7.2025, 19:27