Командная строка из под программы на Lazarus

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Ответить
Ism
энтузиаст
Сообщения: 908
Зарегистрирован: 06.04.2007 17:36:08

Командная строка из под программы на Lazarus

Сообщение Ism »

Как то читал тему на форуме , вот ссылка http://www.freepascal.ru/forum/viewtopi ... =10&t=3390 , о том как бы создать аналог Панели управления Windows на Линукс . Да , существуют аналоги , но столкнулись с тем , что надо писать эту панель совместимую с каждой версией Линукс , так вот у меня возникла мысль . А почему бы не сделать просто графический построитель коммандной строки , то есть нечто среднее между тем , что обсуждалось и самой командной строкой . Этот построитель будет тупо по галочкам ( удобно расположенным ) создавать микро скрипт . Можно например добавить туда мастера для часто повторяемых действий .
Может кто нибудь вызывал командную строку из под Lazarus ? Функцией подобной Win API WinExec или ShellExecute .
Я только начинаю программировать на Lazarus под Linux . И не прочь написать для себя пару мастеров для важных настроек
Павел Ишенин
постоялец
Сообщения: 475
Зарегистрирован: 24.03.2007 09:16:52

Сообщение Павел Ишенин »

используй TProcess
Vadim
долгожитель
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Сообщение Vadim »

Ism писал(а):Может кто нибудь вызывал командную строку из под Lazarus ? Функцией подобной Win API WinExec или ShellExecute .

Можно. Тем более, если принять во внимание, что "командная строка" это ни что иное, как программа. :)
Следовательно надо найти функцию\процедуру, которая запускает другие программы. Если посмотреть в модуле "Unix", то там есть куча таких, вот, например, FpExecV(ИмяПрограммы, МассивАргументовПрограммы). Чтобы вызвать командную оболочку по умолчанию, которая у пользователя запустившего программу, делаем так:

Код: Выделить всё

Uses ..., Unix;
...
Begin
FpExecV('/usr/bin/konsole', NIL);
End;
Аватара пользователя
Brainenjii
энтузиаст
Сообщения: 1351
Зарегистрирован: 10.05.2007 00:04:46

Сообщение Brainenjii »

Так вроде уже есть TCmdLine о которой B4rr4cuda упоминал в блогах...
Аватара пользователя
alexs
долгожитель
Сообщения: 4069
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь
Контактная информация:

Сообщение alexs »

Если тебе просто требуется исполнить скриптик - это самый простой выбор - это путь описанный Павлом или Вадимом. Использование всяких визуальных компонент - это только создание себе дополнительных проблем. Тем более TCmdLine, как я понял - эта компонента создаёт визуальный терминал - а оно тебе нужно?
Ism
энтузиаст
Сообщения: 908
Зарегистрирован: 06.04.2007 17:36:08

Сообщение Ism »

А визуальный терминал как раз то что нужно , ведь интересно увидеть то что было составлено , чемто напоминает создание скрипта в MS Office . Напимер забыл как разметить диск , взял такую утилиту , и хелпа не надо , хотя кажется это начинает напоминать ивращение . Начну писать , увижу , имеет ли смысл .
Аватара пользователя
alexs
долгожитель
Сообщения: 4069
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь
Контактная информация:

Сообщение alexs »

стандартными средствами bash-а или еще чего там (чем ты пользуешся) отладь скрипт - а потом его запускай. А тратить производительность компа на не нужную визуализация - по моему - глупо.
Или ты хочеш сделать визуальны отладчик на них? :D
Ism
энтузиаст
Сообщения: 908
Зарегистрирован: 06.04.2007 17:36:08

Сообщение Ism »

Я считаю себя человеком ленивым в хорошем смысле , так вот мне кажется , зачем лезть в дебри командной сроки , когда можно все настроить вмзуально ( сколько б ресурсов это не сьело ) . С другой стороны командная строка намного гибче и эффективней , поэтому посредник необходим . И вместо того чтобы полностью заменять собой командную строку , нужен просто помошник с встроеным хелпом ( можно выкачать из man ) . Дальний аналог по философии применения могу привести нативирус AVZ http://www.z-oleg.com/ . Он не автоматизирует всю работу , а просто помогает
Ответить