如何更改文件打开对话框的默认路径?

kco*_*ock 5 javascript scripting extendscript shortcut adobe-indesign

我正在编写一个脚本,允许我在InDesign CS3中进行一些基本拼版,我的任务之一是打开一个对话框,允许用户选择要放置的文件.我目前正在这样做:

var file = File.openDialog("Choose a File:");
Run Code Online (Sandbox Code Playgroud)

问题似乎是通过快捷方式导航到网络驱动器时.出于某种原因,对话框将其视为文件,并从对话框返回该路径,而不是导航到文件夹位置.我假设这只是对话框中的一个错误,我最初的想法是检查返回的文件是否有正确的扩展名,如果没有,再次显示对话框,打开到返回的路径位置.但是,我似乎无法找到一种方法来改变它默认打开的位置; openDlg()只有为参数String prompt,var filterboolean multiselect.我不熟悉Javascript,所以我不知道这是一般的解决方案,还是InDesign特有的.

编辑:如果有人感兴趣,这是我用来解决问题的最终代码:

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

基本上,检查它是否是快捷方式(别名),如果是,则解析目标并再次显示对话框.有点像一种hackish方式,但它的工作正常.可能也希望在那里添加一些空值处理,但是,如果取消对话框,则返回null.

Jua*_*des 1

您是否尝试过默认获取所需文件/目录的句柄并调用fileHandle.openDlg()

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