2016-05-19 6 views
1

Мне нужно выполнить сценарий .jsx для InDesign из командной строки (Windows).Как выполнить InDesign extendscript из командной строки?

Для Illustrator, легко работает с помощью следующей команды:

"C:\Program Files\Adobe\Adobe Illustrator CS6 (64 Bit)\Support Files\Contents\Windows\Illustrator.exe" "...\myscript.jsx" 

Оба приложения Illustrator и ExtendScript Toolkit CS6 общедоступна, то скрипт запускается автоматически.

Когда я пытаюсь сделать то же самое для InDesign, он не работает (InDesign говорит «Невозможно открыть myscript.jsx ...»).

Я также попытался запустить ExtendScript Toolkit из командной строки, как показано ниже:

"C:\Program Files (x86)\Adobe\Adobe Utilities - CS6\ExtendScript Toolkit CS6\ExtendScript Toolkit.exe" "...\myscript.jsx" 

В результате приложение ExtendScript Toolkit открыт со сценарием загружен, но ничего не выполняется.

Кто-нибудь знает, как запустить скрипт? Есть ли аргумент -run или -cmd?

+1

Этот вопрос может иметь несколько ответов для вас http://stackoverflow.com/questions/3846626/is-it-possible-to-execute-jsx-scripts-from-outside-extendscript – fabianmoronzirfas

ответ

1

Вашим решением может быть вызов visualbasic скрипта из командной строки. Затем VB вызывает файл indesign jsx на основе ссылки на приложение indesign. Какой-то сложный, но должен окончательно работать.

+0

ОК отлично звучит, спасибо за совет. Прежде чем попытаться, вы знаете, может ли этот метод решить проблему #include, описанную выше? – superrache

+0

Он должен. Попробуйте использовать базовый скрипт с include. – Loic

+0

На самом деле, я не вижу, как это сделать. У вас есть пример того, как вызвать indesign с помощью jsx-скрипта? – superrache

3

Для меня на Osx это работает так:

/Applications/Adobe\ ExtendScript\ Toolkit\ CC/ExtendScript\ Toolkit.app/Contents/MacOS/ExtendScript\ Toolkit -run test.jsx 

В Windows он должен быть:

"\path\to\ExtendScript Toolkit.exe" -run test.jsx 

содержание test.jsx:

//@target indesign 
alert(app.name); 

Он нуждается в -run флаг. При использовании -cmd он все еще выполняет скрипт, но с ESTK. //@target indesign игнорируется. С -run скрипт переходит к InDesign. К сожалению, ESTK вызывает диалог, предупреждающий о выполнении сценариев из ненадежных источников.

+1

спасибо для вас ответ, я просто попробовал -run с простым скриптом, нацеленным на InDesign и показывающим имя приложения, он работает. К сожалению, не работает, когда я включаю некоторые файлы из сценария. InDesign запущен, но ошибка не появляется. Чтобы избежать предупреждения ненадежных источников, я помещаю все сценарии и библиотеки в папку «Мои документы» \ «Adobe Scripts». – superrache

+0

Можете ли вы привести пример? – fabianmoronzirfas

+0

Да, конечно. Итак, я создал скрипт test.jsx (http://pastebin.com/aLFRpr9k), включая библиотеку include.jsx (http://pastebin.com/M7ZimmP4). Оба файла находятся в папке Adobe Scripts.При выполнении из окна ExtendScript я получаю сообщение, но не при выполнении следующей команды: «C: \ Program Files (x86) \ Adobe \ Adobe Utilities - CS6 \ ExtendScript Toolkit CS6 \ ExtendScript Toolkit.exe" -run " C: \ Users \ Kevin \ Documents \ Adobe Scripts \ test.jsx " – superrache

0

У меня нет Windows, под рукой, чтобы на самом деле проверить это, но я хотел бы начать, глядя на эти ссылки: Run VBS в командной строке: http://ss64.com/vb/cscript.html

Run InDesign в VB: https://www.google.fr/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=0ahUKEwjj9_3JoPXMAhVI1BoKHUKMBT8QFggfMAA&url=https%3A%2F%2Fwww.adobe.com%2Fcontent%2Fdam%2FAdobe%2Fen%2Fdevnet%2Findesign%2Fsdk%2Fcs6%2Fscripting%2FInDesign_ScriptingGuide_VB.pdf&usg=AFQjCNFP8M8i3xrOqLp0zw3BGcNpnyhEXQ&sig2=pfFYnsgxXDpCf1A573JTDQ&bvm=bv.122676328,d.d2s

Посмотрите на метод DoScript для вызова сценария JSX. myInDesign.DoScript myJavaScript,