1

在将 JavaScript 传递myScript.jsx给 After Effects 时,我希望 After Effects 在完成时退出:

"C:\Program Files\Adobe\Adobe After Effects CC\Support Files\AfterFX" -r "C:\Workspaces\MyAEScripts\myScript.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.

4

2 回答 2

2

遇到您描述的相同问题,因为项目已更改并且应用程序正在等待您对是否保存它的响应。

传奇的 Dan Ebberts 建议添加:

app.project.close(CloseOptions.DO_NOT_SAVE_CHANGES);
app.quit();

为我工作

于 2015-03-15T10:45:03.040 回答
0

有时这两个命令不起作用。

app.project.close(CloseOptions.DO_NOT_SAVE_CHANGES);
app.quit();

所以这是另一个适用于 Windows 的解决方案

var killAeCommand = "TASKKILL /F /IM AfterFX.exe"; 
system.callSystem("cmd /c \"" + killAeCommand + "\"")

我不确定,但我认为这个命令会杀死所有 AE 实例,在我的情况下工作正常,因为我只有一个打开。

于 2021-11-10T16:10:46.033 回答