Error handling 如何关闭隐藏的InDesign文档?

Error handling 如何关闭隐藏的InDesign文档?,error-handling,adobe-indesign,extendscript,Error Handling,Adobe Indesign,Extendscript,在为InDesign编写脚本的过程中,我已经有过很多实例,其中我创建了一个新文档,在执行所有操作之前一直隐藏,然后使用myDocument.windows.add();让它展现出来。然而,我也有很多在最后一步之前出错的例子,所以文档没有实现。我唯一能让他们关门的方法就是完全用InDesign关门;虽然这样做有效,但我认为必须有更好的方法 在IDE中或通过脚本,是否有一种方法可以查看打开的内容和/或关闭所有隐藏的进程 干杯, 布伦丹当然 app.documents.everyItem().clos

在为InDesign编写脚本的过程中,我已经有过很多实例,其中我创建了一个新文档,在执行所有操作之前一直隐藏,然后使用myDocument.windows.add();让它展现出来。然而,我也有很多在最后一步之前出错的例子,所以文档没有实现。我唯一能让他们关门的方法就是完全用InDesign关门;虽然这样做有效,但我认为必须有更好的方法

在IDE中或通过脚本,是否有一种方法可以查看打开的内容和/或关闭所有隐藏的进程

干杯, 布伦丹

当然

app.documents.everyItem().close(SaveOptions.NO)//将关闭任何可见或不可见的文档,而不保存它们)

如果要使用不可见文档,最好使用try-catch语句。因此,如果出现错误,您可以放弃它们

function dealWithInvisibleDocs()
{
    var doc;

    try
    {
        doc = app.documents.add();
        throw new Error ( "Booom" );
    }
    catch(e)
    {
        alert(e);
        if ( doc.isValid )
        {
           doc.close ( SaveOptions.NO );
        }
    }
}
dealWithInvisibleDocs();

Loic

好东西;谢谢分享。我只做了一行脚本,我可以在需要的时候调用它!如果我要做try/catch,try部分几乎必须包含整个脚本,对吗?而且,既然我对错误处理还是个新手,为什么在结束之前要检查isValid呢?我知道这与最初的问题无关,但我想知道:)是的,使用try-catch需要封装脚本。另一种方法是在文档中运行循环,看看是否有一个布局窗口。isValid用于检查文档是否存在,但我认为最好添加一个检查实例:if(doc instanceof document&&doc.isValid)…loicwoops!从未承认此评论…感谢您的回复!