1


     ドキュメントにモーダルダイアログウィンドウメッセージ  がないapp.activeDocument.close(SaveOptions.no)場合は、正常に  機能します。 ただし、そのようなウィンドウが表示され、更新が必要なリンクに関するエラーメッセージや、スタイルが正しくないInDesign

     ドキュメントがいくつかあります。この場合、ウィンドウがスクリプトによるドキュメントへのアクセスを妨げているため、上記のステートメントは機能しません。


     それで、アクティブなドキュメント内のすべてのモーダルダイアログを反復処理する方法はありますか?これが私がこれまで試したものですが、機能していません

if(xmlFile == "")
{
    //alert("There is no linked XML file in this document,\n\ttry a different document.");

    for(var i = 0; i < app.activeDocument.Windows.length; i++)
    {
        app.activeDocument.Windows[i].close();
    }

    app.activeDocument.close(SaveOptions.no);
    exit();
}
4

2 に答える 2

4

では、アプリケーションの「ユーザー操作レベル」を「NEVER_INTERACT」に変更して、すべてのモーダル ダイアログ ウィンドウを無視する必要があります。変更されたコードは次のとおりです。これは現在機能しています。

if(xmlFile == "")
{
    alert("There is no linked XML file in this document,\n\ttry a different document.");

     // the original interaction and warning settings of the application
    var oldInteractionPrefs = app.scriptPreferences.userInteractionLevel;

    // prevent interaction and warnings from interrupting script
    app.scriptPreferences.userInteractionLevel = UserInteractionLevels.NEVER_INTERACT;

    // close the active document without saving
    app.activeDocument.close(SaveOptions.no);

    // reset interactions to original settings
    app.scriptPreferences.userInteractionLevel = oldInteractionPrefs;

    exit();
}
于 2012-08-02T18:58:49.190 に答える