Выполнение bash команд в программной среде Qt |
Здравствуйте, гость ( Вход | Регистрация )
Выполнение bash команд в программной среде Qt |
neneTc |
10.4.2010, 8:39
Сообщение
#1
|
Студент Группа: Участник Сообщений: 22 Регистрация: 9.3.2010 Пользователь №: 1519 Спасибо сказали: 0 раз(а) Репутация: 0 |
Здравствуйте. Как выполнить команду bash из Qt?
|
|
|
DEADHUNT |
10.4.2010, 8:50
Сообщение
#2
|
Активный участник Группа: Участник Сообщений: 430 Регистрация: 15.4.2009 Пользователь №: 686 Спасибо сказали: 26 раз(а) Репутация: 2 |
лучше через C RTL:
Сообщение отредактировал DEADHUNT - 10.4.2010, 8:56 |
|
|
neneTc |
10.4.2010, 8:53
Сообщение
#3
|
Студент Группа: Участник Сообщений: 22 Регистрация: 9.3.2010 Пользователь №: 1519 Спасибо сказали: 0 раз(а) Репутация: 0 |
Работает! Большое спасибо!
|
|
|
maint |
10.4.2010, 12:32
Сообщение
#4
|
Участник Группа: Участник Сообщений: 235 Регистрация: 3.8.2009 Из: Иркутск Пользователь №: 982 Спасибо сказали: 28 раз(а) Репутация: 2 |
можно еще что то вроде
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 |
10.4.2010, 13:12
Сообщение
#5
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
|
|
|
DEADHUNT |
10.4.2010, 14:07
Сообщение
#6
|
Активный участник Группа: Участник Сообщений: 430 Регистрация: 15.4.2009 Пользователь №: 686 Спасибо сказали: 26 раз(а) Репутация: 2 |
а почему не через QProcess? а зачем использовать Qt где можно его не использовать? тем более использование QProcess более сложное + надо будет править для каждой ОС(например cmd или bash). мне например в Qt ещё не нравится что у них везде QString, лучше бы пошли по пути boost и использовали бы std::string(и прочие стандартные для C/C++ типы). |
|
|
Текстовая версия | Сейчас: 22.12.2024, 13:09 |