Можно ли запустить макрос openoffice из внешнего файла?

Я хочу запустить макрос OpenOffice из внешнего файла. Как:

[email protected] ~ $ soffice macro:///home/vlad/q.vbs 
4 голоса | спросил Vlad 11 Mayam11 2011, 02:42:43

1 ответ


0

На самом деле это не ответ - просто комментарий, чтобы поднять этот вопрос и, надеюсь, получить ответ :)

Возможно, это связано с необходимостью явно устанавливать разрешения для макросов, например:

Невозможно выполнить макрос из командной строки (Просмотр темы) • Форум сообщества OpenOffice.org

  

Редактировать: фактически кажется невозможным вызывать макросы документов, что идеально по соображениям безопасности.

Смотрите также:

В качестве примечания, стандартный файл Module1 можно найти в (в Linux):

~/.openoffice.org/3/user/basic/Standard/Module1.xba
~/.libreoffice/3/user/basic/Standard/Module1.xba

и обратите внимание, что .xba на самом деле является XML-файлом, который содержит источник макроса Basic, например:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd">
<script:module xmlns:script="http://openoffice.org/2000/script" script:name="Module1" script:language="StarBasic">REM  *****  BASIC  *****

Sub Main

End Sub</script:module>

К сожалению, простое копирование в соответствующие каталоги (ниже, в расширениях) не работает, как в следующем фрагменте командной строки.

sudo mkdir /usr/lib/libreoffice/share/extensions/mytest
sudo cp ~/.libreoffice/3/user/basic/Standard/Module1.xba /usr/lib/libreoffice/share/extensions/mytest/MyTestModule.xba
sudo sed -i 's/Module1/MyTestModule/g' /usr/lib/libreoffice/share/extensions/mytest/MyTestModule.xba

Итак, я думаю, что единственный способ - это вручную добавить /разрешить макросы в OpenOffice, а затем, возможно, найти, где хранятся соответствующие файлы .xba, и изменить там их код (если требуется только использование командной строки) ...

Возможно, использование Python - OpenOffice.org Wiki - более открытый подход к внешним скриптам - но для этого нужно запустить openoffice как сервер ...

ответил sdaau 4 J0000006Europe/Moscow 2011, 23:13:44

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132