crossplatform.ru

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

> Сервер telnet/ssh (выполнение команд)
darkhac
  опции профиля:
сообщение 19.10.2010, 9:07
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 19
Регистрация: 29.7.2009
Пользователь №: 956

Спасибо сказали: 2 раз(а)




Репутация:   0  


Кто нибудь знает способ с помощью qt выполнить команду в консоли и получить ее результат. причем по название наверно понятно что команды поступают в потоковом режиме. Причем если пришла команда cd Directory а после нее к примеру Dir то вывестись должно содержимое Directory
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
darkhac
  опции профиля:
сообщение 19.10.2010, 14:26
Сообщение #2


Студент
*

Группа: Участник
Сообщений: 19
Регистрация: 29.7.2009
Пользователь №: 956

Спасибо сказали: 2 раз(а)




Репутация:   0  


Проблема решена. спасибо всем. если вдруг потом кто-то наткнется на эту тему то может ему поможет вот этот код

#include <QByteArray>
#include <QProcess>
#include <iostream>
#include <string>

using namespace std;

#pragma comment(lib, "qtmaind.lib")
#pragma comment(lib, "qtcored4.lib")
#pragma comment(lib, "qtguid4.lib")


int main(int argc,char** argv)
{
    QProcess cmd;
    cmd.start("cmd");
    if (!cmd.waitForStarted())
        return false;
    cmd.waitForReadyRead();
    QByteArray result = cmd.readAll();
    cout << result.data();

    string str;
    cin >> str;
    while(str != string("exit"))
    {
        cmd.write(str.c_str());
        cmd.write("\n");
        cmd.waitForReadyRead();
        result = cmd.readAll();
        cout << result.data();
        cin >> str;
    }
}
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 22.12.2024, 18:05