Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Выполнение bash команд в программной среде Qt
Форум на CrossPlatform.RU > Библиотеки > Qt > Qt Ввод/Вывод, Сеть. Межпроцессное взаимодействие
neneTc
Здравствуйте. Как выполнить команду bash из Qt?
DEADHUNT
лучше через C RTL:
#include <cstdlib>
system("your command");
neneTc
Работает! Большое спасибо!
maint
можно еще что то вроде

shell = getenv("SHELL");
cmd = "любая программа или скрипт";
if (shell == NULL)
shell = "/bin/sh";

if ((pid = fork()) == 0) {
if ((pid = fork()) == 0) {
execl(shell, "как обзывать будем", "-ec", cmd, (char *) 0);
диагностика;
}
if (pid < 0) {
диагностика
exit(1);
}
}
так будет полный контроль
Litkevich Yuriy
Цитата(DEADHUNT @ 10.4.2010, 12:50) *
лучше через C RTL:
а почему не через QProcess?
DEADHUNT
Цитата(Litkevich Yuriy @ 10.4.2010, 14:12) *
а почему не через QProcess?

а зачем использовать Qt где можно его не использовать? тем более использование QProcess более сложное + надо будет править для каждой ОС(например cmd или bash). мне например в Qt ещё не нравится что у них везде QString, лучше бы пошли по пути boost и использовали бы std::string(и прочие стандартные для C/C++ типы).
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.