Как изменить путь по умолчанию для диалога открытия файла? - PullRequest
5 голосов
/ 28 января 2011

Я пишу сценарий, который позволяет мне выполнять базовую верстку в InDesign CS3, и одна из моих задач - открыть диалог, позволяющий пользователю выбрать файл для размещения.В настоящее время я делаю это с:

var file = File.openDialog("Choose a File:");

Проблема, кажется, при переходе к сетевому диску через ярлык.По какой-то причине диалоговое окно видит его как файл и возвращает этот путь из диалогового окна, а не перемещается в местоположение папки.Я предполагаю, что это просто ошибка в диалоге, и моей первоначальной мыслью было проверить, имеет ли возвращаемый файл правильное расширение, и, если нет, снова отобразить диалоговое окно, открытое по пути к возвращенному пути.Тем не менее, я не могу найти способ изменить, где он открывается по умолчанию;openDlg() имеет параметры только для String prompt, var filter и boolean multiselect.Я не знаком с Javascript, поэтому не знаю, относится ли это к общему решению или к InDesign.

РЕДАКТИРОВАТЬ : Если кому-то интересно, вот последний код, который я использовал для решения проблемы:

var path = new File("~/desktop");
var file = path.openDlg("Choose File:");
while (file.alias) {
    file = file.resolve().openDlg("Choose File:");
}

По сути, проверяет, является ли это ярлыком (псевдонимом),и если да, решает цель и снова отображает диалоговое окно.Отчасти хакерский способ сделать это, но он работает просто отлично.Может также захотеть добавить некоторую обработку нуля, хотя, как будто диалог отменяется, возвращается ноль.

1 Ответ

1 голос
/ 28 января 2011

Вы пытались получить дескриптор файла / каталога, который вам нужен по умолчанию, и вызывать fileHandle.openDlg()?

http://forums.adobe.com/message/1109421#1109421

...