我编写了一个indesign脚本,用于生成需要导出为PDF文件的文档。导出以异步方式发生,以便用户可以继续工作。生成的文档在导出过程中在后台保持打开状态,只有在关联的导出完成后才会关闭。
如何可靠地捕获导出失败,例如当用户从后台任务面板取消后台导出任务时?
无论我是在监听应用程序还是正在导出的文档,ImportExportTask.FAILED_EXPORT事件似乎都不像文档所描述的那样起作用。
我也尝试过使用IdleTasks定期检查相关BackgroundTasks状态的变化,但这让我觉得很脏,IdleEvent.ON_IDLE事件不能为我的目的提供足够可靠的触发(根据我自己的经验)
如果有人能帮我解决这个问题,我真的很感激,我已经在这个问题上旋转了很长时间。
谢谢!
答案 0 :(得分:1)
检查BackgroundTask
的{{3}}的返回值,waitforTask()
:
TaskState.CANCELLED | Task was cancelled (either before it ran or during execution
TaskState.CANCELLING | Task was signalled to cancel but did not stop yet
TaskState.COMPLETED | Task completed execution (successfully or with errors)
TaskState.QUEUED | Task was queued and is waiting to be scheduled for execution
TaskState.RUNNING | Task is running
TaskState.WAITING | Task is waiting