如何解决ExtendScript Toolkit无法正常使用

作者:滴水穿石 | 创建时间: 2023-06-23
应该有不少人知道,Adobe ExtendScript Toolkit(简称ESTK,译为脚本拓展工具包)是用来编写ExtendScript脚本的吧,支持这种特殊脚本的Adobe产品有AE、PS等(当然不是所有Adobe产品都有脚本拓展的功...
如何解决ExtendScript Toolkit无法正常使用

问题一:

该 脚本拓展工具包的某些功能不可用,比如下图:

在这里, 对象模型查看器无法使用。这会导致某些功能异常,比如,在输入代码时该有的提示没有出现。看下图:

而正常使用的时候,它是有输入提示的,类似于VS 2010里面的插件“Visual_Assist_X”,这个对代码的输入与检查的作用是非常大的。少了这些提示,会多走许多弯路呢。下面是正常使用时如下:

导致它出现的根本原因是缺少了 对象模型查看器的一些重要配置文件,以下情况下会导致它的缺失: 一:使用了绿色版的 脚本拓展工具包(ExtendScript Toolkit),而且里面缺少了一些重要文件,可能是绿化作者没有注意到而导致的异常。 二:安装了 脚本拓展工具包,但是由于某些原因(如,病毒、系统运行异常、清理垃圾……)把那些文件给清除了。

解决方法是,将它所缺失的文件找回来,主要是两个文件夹 (“APE”、“Scripting Dictionaries XXX”),按提示将需要的文件夹拷贝到相应的目录即可。如下图所示:

最终,在” C:\Program Files (x86)\Common Files\Adobe”目录下应该有这两个文件,如下图红色的标记所示:

将这些文件放置到正确的位置之后,就可以看到 对象模型查看器能够正常使用了(我们在编写Adobe脚本的时候,通过这个对象模型查看器可以查阅所需要的API、方法了),而且代码的输入提示也有了。如下图:

问题二:

那就是 脚本拓展工具包无法使用,如下图所示:

当我们点击右上角的关闭图标时,会显示无法响应,当多次点击关闭时,这个 脚本拓展工具包就自动关闭了,如下图:

这个问题多出现在Adobe产品的试用期差不多结束时;或者是使用破解后的Adobe产品。另外,这个问题也不是在一开始就出现的,大部分都是在使用一段时间后才会出现,而且这种情况下,你的电脑上不仅仅有这个 脚本拓展工具包,同时也有Adobe公司的其它产品,如PS、AE……,另外,经常是同版本的,比如你的电脑上有ExtendScript Toolkit CC的同时,也有After Effect CC或者PhotoShop CC。

现在,有一种比较愚蠢的做法就是将这个脚本拓展组件安装到虚拟机上运行,因为,这个 脚本拓展工具包的安装包是用户自行到网上下载的,因此它可以在没有安装过Adobe产品的虚拟机上安装而且运行。(貌似这个方法也是不能完全解决这个问题的)

当然,接下来的方法就是我提倡的啦:一旦弹出了这个 “Help Improve Adobe's Product”消息窗口(译为: “Adobe产品改进计划……”),找到该程序的安装目录,把 AdobePIP.dll删除即可。

以下是我发现这个方法的一个过程: 由于某天我心血来潮,打算找出哪些文件在删除之余又毫不影响ESTK的实用功能。而在测试过程中,我下载了几个ESTK版本(ESTK CS5、ESTK CS6、ESTK CC 2013),发现,只有ESTK CC才会自动弹出这个 “Help Improve Adobe's Product”窗口,而且,与ESTK CC的安装目录下的 AdobePIP.dll有直接联系,这个动态链接库以及消息窗口在CC版出现之前是没有的,后来,还发现这个导致ESTK异常关闭的窗口提示,在正常情况下,通过执行 “帮助”----“Adobe 产品改进计划……”命令也可以打开(当然,中英文版本的文字显示有别啦),而且AE、PR、PS等其他Adobe CC系列产品也是这样呢。如图所示:

综上所述,只要把那个 AdobePIP.dll删除啦,这个窗口就不会再出现啦。

问题三:

“ 点击连接到目标应用程序”功能异常,如图所示:

正常执行这个功能的情形是这样的,弹出了“ 等待,按ESC键中止……”消息框后,就能打开相应程序啦,此时ESTK就会与这个Adobe产品产生动态连接,并且ESTK的 数据浏览器也会自动刷新。如图所示:

这个功能可以让用户在ESTK里间接启动PS、AE、PR等Adobe产品,并且,让正在调试的脚本在已连接的Adobe产品中直接执行,这是一种高级的脚本调试技巧,因为使用这个方法,我们不仅仅实现了错误代码的检测还能快速在AE、PS里执行脚本。至于能够启动哪些Adobe产品呢,并且能与之相连接,这就需要查看那个下拉列表啦,如图所示:

关于这个问题的解决方法,其实也是与 “Adobe PCD”文件夹有直接关系滴,而且与该文件夹下的 pcd.db关系最大。当我们以 “用记事本方式打开”命令来查看这个 pcd.db文件时,如图所示:

由图可知,这个 pcd.db文件是一个数据库文件,我使用 SQLite Developer来读取这个数据库文件信息,得到以下本人以为相当重要的数据信息(当然是与ESTK里“ 点击连接到目标应用程序”功能相关的数据信息啦)如图所示:

本人认为,在此图中“ AMTConfigPath”、“SupportsESTK”、“BridgeTalkCode”、“ExecutableBasename”和“DisplayName”这5个key所对应的列的信息都是相当重要的,Adobe产品的安装路径、Adobe产品能够支持“点击连接到目标应用程序”这种间接启动方式的开关等信息都是存放在value里,例如,仅当“SupportsESTK”为true,且“AMTConfigPath”所保存的路径上的确是有相关软件的安装目录,当两者同时符合条件时,这个“点击连接到目标应用程序”的命令才能正常执行。

所以,本人为这类问题提供的解决方法如下: 当发现这个“ 点击连接到目标应用程序”命令异常后,找到相应版本的“ Adobe PCD”文件夹(可以向亲朋好友或者到网上求网友上传符合条件的 Adobe PCD文件夹),接着使用 SQLite Developer来加载这个pcd.db文件,在 SQLite Developer里,通过 “pcd----表(10)----domain_data”来打开这个数据库信息,再到 “数据”页面查看“AMTConfigPath”与“SupportsESTK”两个key的value,将里面的信息按模板图片里的格式修改即可,当然, 具体的路径一定要根据实际情况来设置啦。如图所示:

问题四:

我的ESTK是英文版的,想将它改成中文版的,应该怎么办?

我们知道,Adobe官方自从推出了CC系列之后,就开始提供中文版的Adobe产品给我们这些中国用户下载安装啦,但是不知何故,对于这个ESTK,却是迟迟没有推出中文语言包,这着实让我大大地郁闷了一段时间。其实,我们可以通过模仿官方提供的其他语言包自己手动制作一个中文语言包的(其实只需要将 en_US.dat以及 extendscript-en_US.dat汉化就可以啦),如图所示:

制作好中文语言包后,把其他语言包删除(建议你保留英文版的语言包吧,或者是把其他语言包打包压缩后放置在一旁),重新启动ESTK就可以看到劳动成果啦。如图所示:

不过,个人建议,不要将ESTK中“ 对象模型查看器”的字符串汉化啦,否则可能将会出现这种情况。如图所示:

以上是日文版的字符串显示情况,中文版与之相似,在某些地方字符串给汉化后,将不会显示出来,这个问题会导致“ 对象模型查看器”的书签功能以及搜索功能都不可用。不过,这个问题,不是出现在所有的语言版本里的,如法文版,如图所示:

因此,本人建议诸位,不要汉化 对象模型查看器里的字符串,避免出现上述情况。最终效果下图所示:

温馨提示

我们在安装Adobe产品时,在软件的安装过程中,会自动将一些重要信息添加到pcd.db这个数据库文件里的,当然啦,卸载时也会自动修改这个文件滴。
数据库文件不能以记事本的方式打开后直接修改,一定要通过SQLite Developer等专门用来修改数据库文件的软件来修改,否则,新得到的数据库文件将无法使用。
其实,就算“对象模型查看器”不可用,在ESTK里,其类似“Visual_Assist_X”的代码辅助功能也是可以部分显示的,可惜的是,这样一来,这个代码辅助功能就不是完整的啦。
其实,这些问题绝大部分只会出现在绿色用户的身上,我就是这类人的典型啦,不过,既然用了绿色版,多担当一些也是应该的。
点击展开全文

更多推荐