Автор: jim1406 18.3.2009, 16:01
Вариант
void mainWindow::on_pushButton_clicked()
{
QProcess *myProcess = new QProcess(NULL);
myProcess->start(ui->lineEdit->text());
}
Позволяет запустить любые оконные приложения, но не консольные. Как быть? Может есть более простой способ "передать вызов" ОС?
Заранее признателен!
Автор: kwisp 18.3.2009, 16:11
Цитата(jim1406 @ 18.3.2009, 16:01)
но не консольные
очень странно. из чего такой вывод сделан?
П.С.
воспользуйся поиском по форуму. там есть темы такие же как и у тебя
Автор: jim1406 18.3.2009, 16:44
Цитата(kwisp @ 18.3.2009, 19:11)
очень странно. из чего такой вывод сделан?
Попробовал - не получается. Прописываю в эдите оконные приложения - запускаются. А консольные - нет. Я пока разбираюсь под ОС Windows... Но ведь суть не должна меняться
Пробовал C:\WINDOWS\system32\cmd.exe - ноль эмоций. А тут же C:\WINDOWS\system32\charmap.exe - запускается.
Вообще, хотелось бы, чтоб ОС сама решала, что с командной строкой делать, которую я не знаю как средствами Qt ей передать
Цитата(kwisp @ 18.3.2009, 19:11)
воспользуйся поиском по форуму. там есть темы такие же как и у тебя
Пока не нашел, в том-то и дело. Можно ткнуть меня носом
Автор: kwisp 18.3.2009, 17:28
http://www.forum.crossplatform.ru/index.php?showtopic=2268&hl=QProcess
http://www.forum.crossplatform.ru/index.php?showtopic=2394&hl=QProcess
что если ввести QProcess в посике ничего не получаешь в результате?
Автор: SABROG 18.3.2009, 17:47
Консольные программы запускаются, но у них автоматом включается Pipe на вывод. Вызови 100 раз этот CMD и увидишь, что все они висят в процессах. В общем, если тебя не устраивается пайповый перехват, то запускай процесс так:
QProcess::startDetached("C:\\WINNT\\SYSTEM32\\CMD.EXE");
Автор: jim1406 18.3.2009, 20:55
Цитата(jim1406 @ 18.3.2009, 19:44)
1
2
что если ввести QProcess в посике ничего не получаешь в результате?
Про поиск я, конечно, догадался. Только одно дело искать то, что забыл, а другое - не знал.
Спасибо!
Цитата(kwisp @ 18.3.2009, 20:28)
Консольные программы запускаются, но у них автоматом включается Pipe на вывод. Вызови 100 раз этот CMD и увидишь, что все они висят в процессах. В общем, если тебя не устраивается пайповый перехват, то запускай процесс так...
Елки-палки! Действительно... Спасибо!