当将JavaScript myScript.jsx
传递给After Effects时,我希望After Effects在完成时退出:
"C:Program FilesAdobeAdobe After Effects CCSupport FilesAfterFX" -r "C:WorkspacesMyAEScriptsmyScript. "jsx "
所以在传递JavaScript myScript的最后一行。JSX脚本是:
app.quit();
不管这个命令After Effects只是不想退出。我试图包含一个
app.exitAfterLaunchAndEval=true;
但这并没有帮助。
如果我用 传递相同的javaScript AfterEffects.exe -s "here is same javascript ending with; app.quit();"
它退出(退出)漂亮。
我会继续传递javascript(使用-r
)。但是在Windows命令行中可以使用的字符数量是有限的。我需要能够使After Effects退出后,它完成运行脚本通过-r c:/path/to/myJavaScript.jsx
。
有同样的问题,你正在描述,因为项目已经改变,应用程序正在等待你的响应是否保存它。
传奇人物Dan Ebberts建议添加:
app.project.close(CloseOptions.DO_NOT_SAVE_CHANGES);
app.quit();
works for me
有时这两个命令不起作用
app.project.close(CloseOptions.DO_NOT_SAVE_CHANGES);
app.quit();
这是另一个适用于Windows的解决方案
var killAeCommand = "TASKKILL /F /IM AfterFX.exe";
system.callSystem("cmd /c "" + killAeCommand + """)
我不确定,但我认为这个命令将杀死所有AE实例,在我的情况下工作得很好,因为我只有一个打开。