Lazarus и запуск внешних приложений

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

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

Re: Lazarus и запуск внешних приложений

Сообщение Владимир » 11.12.2011 18:08:01

Ism писал(а):Большинство функций libc перекочевали в модуль Unix с приставкой fp

О. Спасибо большое, посмотрю!
Владимир
постоялец
 
Сообщения: 355
Зарегистрирован: 23.08.2007 19:48:39
Откуда: Москва

Re: Lazarus и запуск внешних приложений

Сообщение Ism » 11.12.2011 18:32:18

Немного соврал, все юниксовые функции распределены по 3 модулям
Unix
http://www.freepascal.org/docs-html/rtl ... dex-5.html
BaseUnix
http://www.freepascal.org/docs-html/rtl ... dex-5.html
unixtype
http://www.freepascal.org/docs-html/rtl ... dex-3.html
Ism
энтузиаст
 
Сообщения: 908
Зарегистрирован: 06.04.2007 17:36:08

Re: Lazarus и запуск внешних приложений

Сообщение Владимир » 11.12.2011 19:03:21

И еще раз спасиб!

Добавлено спустя 2 часа 19 минут 54 секунды:
Ism писал(а):Немного соврал, все юниксовые функции распределены по 3 модулям
Unix

Если я правильно понял, то добавляем в Uses Unix, а потом вместо libc.System(pChar) используем fpSystem(AnsiString) ? Вроде даже удобнее!
Кстати, обыскался по функциям работы с разд.памятью - оказались в модуле ipc.
Владимир
постоялец
 
Сообщения: 355
Зарегистрирован: 23.08.2007 19:48:39
Откуда: Москва

Re: Lazarus и запуск внешних приложений

Сообщение salt » 22.12.2011 16:36:47

Подскажите, плс, как запустить внешнее приложение с передачей ему параметров.
В bash это выглядит так:
Код: Выделить всё
echo "Это проговариваемая фраза." | festival --tts --language russian

В примерах есть такая конструкция:
Код: Выделить всё
shell('kwrite File_in_Russian.txt');

пытался делать по аналогии
Код: Выделить всё
shell('echo "Привет мир" | festival --tts --language russian');

, но ничего не получилось

Linux Lazarus v.0.9.30
Всем спасибо.
salt
незнакомец
 
Сообщения: 2
Зарегистрирован: 19.12.2011 23:40:50
Откуда: Новгородская обл., дер.Толчино, иногда Санкт-Петербург

Re: Lazarus и запуск внешних приложений

Сообщение Ism » 22.12.2011 17:07:55

Здесь это уже обсуждалось.
Попробуйте tprocess или fpsystem

То, что вы делаете это несколько команд, а значит скорее всего надо

fpsystem ('sh -с "echo "Привет мир" | festival --tts --language russian"')

или запихнуть команды в файл скрипта , сделать его исполняемым и запускать fpsystem ('my_skript')

но лучше tprocess , так как он позволяет управлять характеристиками запуска
Ism
энтузиаст
 
Сообщения: 908
Зарегистрирован: 06.04.2007 17:36:08

Re: Lazarus и запуск внешних приложений

Сообщение salt » 22.12.2011 17:31:21

Ism писал(а):Здесь это уже обсуждалось.

Спасибо. Что-то я не внимательно тему просмотрел. Буду пробовать.
P.S. вот так работает:
Код: Выделить всё
fpSystem('echo "Привет мир." | festival --tts --language russian');
Последний раз редактировалось salt 25.12.2011 22:46:04, всего редактировалось 2 раз(а).
salt
незнакомец
 
Сообщения: 2
Зарегистрирован: 19.12.2011 23:40:50
Откуда: Новгородская обл., дер.Толчино, иногда Санкт-Петербург

Re: Lazarus и запуск внешних приложений

Сообщение alexkam » 22.12.2011 18:05:34

Как запустить из Lazarus MS Excel Starter в Windows 7
Excel := CreateOleObject('Excel.Application');
Excel.WorkBooks.Open(URL);
Excel.Visible := True;
пишет ошибку, хотя для полного офиса все отлично работает.
alexkam
постоялец
 
Сообщения: 152
Зарегистрирован: 07.09.2009 20:03:59

Re: Lazarus и запуск внешних приложений

Сообщение Ism » 22.12.2011 18:10:37

Возможно в стартере тупо нес activex объекта
Ism
энтузиаст
 
Сообщения: 908
Зарегистрирован: 06.04.2007 17:36:08

Re: Lazarus и запуск внешних приложений

Сообщение SuSe user » 11.01.2012 20:40:20

fpSystem работает только в паскале, а лазарус пишет "Fatal: Can't find unit fpSystem used by Unit2". Есть возможность это обойти?
SuSe user
новенький
 
Сообщения: 13
Зарегистрирован: 02.10.2011 21:03:08

Re: Lazarus и запуск внешних приложений

Сообщение Vadim » 12.01.2012 03:04:00

SuSe user писал(а):Есть возможность это обойти?

Для этого есть единственный, но совершенно стандартный способ - добавить в строку USES именно тот модуль, в котором содержится эта функция. ;) Название модуля найдёте сами или с этим есть какие-то проблемы?
Vadim
долгожитель
 
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Re: Lazarus и запуск внешних приложений

Сообщение leo_bsv » 12.01.2012 13:44:08

lol,... :P
Аватара пользователя
leo_bsv
постоялец
 
Сообщения: 276
Зарегистрирован: 04.08.2010 16:26:10
Откуда: Йошкар-Ола

Re: Lazarus и запуск внешних приложений

Сообщение kotompazb » 30.08.2015 03:02:43

Здравствуйте, подскажите как запустить стороннее приложение под окнами средствами Lazarus.
Пытаюсь так:
Код: Выделить всё
ExecuteProcess('name.exe', '', []);

В принципе приложение открывается, но открывшая его основная программа висит, пока его не закроешь. ЧЯДНТ?
Все. Разобрался. Извиняюсь.
Аватара пользователя
kotompazb
постоялец
 
Сообщения: 153
Зарегистрирован: 21.06.2012 13:03:39
Откуда: Novosibirsk, xUSSR

Пред.

Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 242

Рейтинг@Mail.ru
cron