2

如何使用 javascript 脚本语言关闭 Photoshop。

(我正在自动编写很多东西的脚本,并且我注意到由于某种原因,一些 ram 并没有随着每个新任务释放。我希望在 X 次操作之后,我将完全关闭 Photoshop,以释放内存..它正在吃掉我所有的 8 个演出,然后打开 Photoshop 帮助并导致巨大的故障(实际上,老实说,它用垃圾填满了我的硬盘驱动器,直到我得到一个“硬盘驱动器已满”消息...(我认为它将内存转储到我硬盘上的虚拟内存中?)...真是一团糟)

谢谢!

4

3 回答 3

2

我对 Photoshop JSX DOM 进行了一些研究,但找不到任何删除临时文件的神奇功能。

最接近您需求的是清除缓存:

app.purge(PurgeTarget.ALLCACHES);

但这并没有多大帮助。我试图找到一种从 JSX 调用 .bat 文件的方法,但还没有找到任何东西,此外,如果您正在运行 Photoshop,则无法从系统中删除 Photoshop 临时文件,尽管所有文档都可能已关闭。

将其放入 bat 文件中以清除您的临时文件夹。它可能会帮助您节省几秒钟,但我认为我无能为力。

cd %homepath%\Local Settings\Temp
del * /f /s /q /a r h

如果您可以自动化生成 psd、关闭 Photoshop、清除临时文件并重复下一步的过程,那就太好了。如果没有,请从朋友那里借一个外部硬盘或购买一个并将 Photoshop 的暂存盘设置为该硬盘。与试图绕过它相比,它可能会为您节省更多的时间和麻烦。Photoshop 可能会消耗大量资源,但如果它完成了工作,请“致敬”并快速完成。从长远来看,它会得到回报。

于 2009-09-07T21:36:08.437 回答
2

这将关闭 Photoshop:

 executeAction(app.charIDToTypeID('quit'), undefined, DialogModes.NO);

在此之前,您可能需要遍历文档并全部关闭它们

 var q = app.documents.length;
 for (var i = 0; i < q; i++) {
      var desc7 = new ActionDescriptor();
      desc7.putEnumerated( charIDToTypeID( "Svng" ), charIDToTypeID( "YsN " ), charIDToTypeID( "N   " ) );
      executeAction( charIDToTypeID( "Cls " ), desc7, DialogModes.NO );
 }
于 2015-10-13T07:05:24.923 回答
0

Photoshop 使用磁盘上的文件进行临时存储,因此不必将所有内容都保存在内存中。默认情况下,此文件在启动驱动器上创建,但由于该驱动器上的可用空间似乎太少,您应该更改设置,以便它在具有更多可用空间的磁盘上创建文件。

于 2009-09-03T05:47:14.227 回答