Вызов LibreOffice Writer из Lazarus в Ububntu

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

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

Ответить
Sergey_Afanasyev
новенький
Сообщения: 49
Зарегистрирован: 22.02.2012 19:30:27

Вызов LibreOffice Writer из Lazarus в Ububntu

Сообщение Sergey_Afanasyev »

Находясь в Ububntu нажимаю Ctrl+Alt+T и выхожу на консоль.
Теперь команда:
cd /usr/share/applications

Мы перешли в папку, где находится LibreOffice Writer.
Следующая команда:
libreoffice –writer /home/sergey/KolPoFak.rtf

Вызывается LibreOffice Writer и можно просмотреть или откорректировать
документ KolPoFak.rtf

В Lazarus пишем :

SysUtils.ExecuteProcess('/usr/share/applications/libreoffice -writer',
['/home/sergey/KolPoFak.rtf']);

Дает ошибку 127 - дескать не нашло. Но ведь из консоли находило.
Аватара пользователя
Лекс Айрин
долгожитель
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград
Контактная информация:

Сообщение Лекс Айрин »

Sergey_Afanasyev, перекинь writer в параметр.

Добавлено спустя 3 минуты 55 секунд:
а вообще, writer это самостоятельная программа -- можно ведь запускать и чисто ее.
wavebvg
постоялец
Сообщения: 355
Зарегистрирован: 28.02.2008 03:57:35

Сообщение wavebvg »

Из заголовка не понятно, что хотели:
1. Запустить программу, тогда хотелось бы увидеть консольную команду
2. Запустить объект StarOffice и через него работать с документом (явно не было даже попытки)
Sergey_Afanasyev
новенький
Сообщения: 49
Зарегистрирован: 22.02.2012 19:30:27

Сообщение Sergey_Afanasyev »

Попробовал вариант
SysUtils.ExecuteProcess('/usr/share/applications/libreoffice',
['-writer /home/sergey/KolPoFak.rtf']);
Дает: Failed to execute "/usr/share/applications/libreoffice" error code 127
Т.е. придирается к строке "/usr/share/applications/libreoffice"
ViTality
постоялец
Сообщения: 308
Зарегистрирован: 05.10.2007 15:12:02

Сообщение ViTality »

в консоли libreoffice "найдется" в любой папке
Т.е. придирается к строке "/usr/share/applications/libreoffice"

кто вам сказал что там лежит libreoffice?
в этой папке храняться всеголишь ярлыки (*.desktop)

чтоб узнать где лежит прога пишите в консоли

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

whereis libreoffice
Аватара пользователя
Лекс Айрин
долгожитель
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград
Контактная информация:

Сообщение Лекс Айрин »

Sergey_Afanasyev, у меня нет сейчас при себе линухи, но у меня в либреофисе текстовый процессор это файл swriter.exe
SSerge
энтузиаст
Сообщения: 971
Зарегистрирован: 12.01.2012 05:34:14
Откуда: Барнаул

Сообщение SSerge »

Sergey_Afanasyev

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

/usr/lib/libreoffice/program/swriter


- штатный writer либреофиса в ubuntu 14.04
его собственно и надо запускать.

на агрегатор libreoffice есть софтлинк /usr/bin/soffice
может, через этот линк и правильнее запускать
Sergey_Afanasyev
новенький
Сообщения: 49
Зарегистрирован: 22.02.2012 19:30:27

Сообщение Sergey_Afanasyev »

Большое спасибо ViTality. Благодаря команде whereis libreoffice я узнал где он лежит и теперь
SysUtils.ExecuteProcess('/usr/bin/libreoffice', ['/home/sergey/KolPoFak.rtf']);
нормально работает.
Ответить