crossplatform.ru

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


  Ответ в Сервер telnet/ssh (выполнение команд)
Введите ваше имя
Подтвердите код

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

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


Последние 10 сообщений [ в обратном порядке ]
darkhac Дата 19.10.2010, 14:26
  Проблема решена. спасибо всем. если вдруг потом кто-то наткнется на эту тему то может ему поможет вот этот код

#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;
    }
}
Алексей1153 Дата 19.10.2010, 14:03
  darkhac, а если путь полностью указать

c:/windows/system32/cmd.exe
или
%CmdSpec%
darkhac Дата 19.10.2010, 13:55
 
Цитата(Алексей1153 @ 19.10.2010, 16:41) *
пробелы перед параметрами поставь
console->start("cmd",QStringList()<<" /K"<<" dir");
не помогает.
Алексей1153 Дата 19.10.2010, 13:41
  пробелы перед параметрами поставь
console->start("cmd",QStringList()<<" /K"<<" dir");
darkhac Дата 19.10.2010, 13:32
  c QProcces вроде более менее разобрался. в итоге вполне себе выполняет ping и тп, но консольные команды не хочет(ниже представлен код). никто не подскажет? может быть возможно как-то открыть командную строку в фоновом режиме и отсылать ей?

console->start("cmd",QStringList()<<"/K"<<"dir");
Алексей1153 Дата 19.10.2010, 11:32
  kwisp, нет, не шучу. Но я не пробовал никогда :)
kwisp Дата 19.10.2010, 10:45
 
Цитата(Алексей1153 @ 19.10.2010, 11:20) *
о, кстати, в С есть функция

system(const char*);

попробуй так команду выполнить :) Думаю, в Qt должны выполнить то, что надо для ОС

шутишь?

darkhac,
вот это ищи
Алексей1153 Дата 19.10.2010, 10:20
  о, кстати, в С есть функция

system(const char*);

попробуй так команду выполнить :) Думаю, в Qt должны выполнить то, что надо для ОС
kwisp Дата 19.10.2010, 9:51
  darkhac,
воспользуйся поиском, пожалуйста.
Алексей1153 Дата 19.10.2010, 9:28
  похоже, вопрос для винды. Поэтому

выполнить
cmd /?


далее читать
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 28.3.2024, 14:46