2014-11-21 42 views
0

我已經編寫了幾個簡單的.JSX腳本,它們可以自動執行一些我在Photoshop中執行的常見猴子作業。運行extensionscript(.jsx)啓動ExtendscriptToolkit

我在ExtendScriptToolkit中編寫腳本,然後用File > Scripts > Browse執行它們並選擇我想要的腳本。這將運行腳本並執行我想要的操作,但每次都會再次啓動ExtendScriptToolkit。我已經將腳本傳遞給了其他幾個人,他們都要求我解決這個問題,以便腳本在Photoshop中完全執行,但是我無法使其工作。

基本上,如何在不啓動腳本編輯器的情況下從Photoshop運行腳本?

乾杯您的幫助

+2

你使用'$ .writeln( 「東西」);'聲明?這啓動ESTK。你也使用哪個PS版本? – fabianmoronzirfas 2014-11-22 08:34:44

回答

1

檢查腳本$.writeln()語句。這可能是一個問題。您也可以通過設置調試級別來禁止調試。

從對象模型查看器拍攝於ESTK

// $.level   
// Data Type: number 
// Core JavaScript Classes 
// The current debugging level, which enables or disables the JavaScript debugger. 
// One of 0 (no debugging), 1 (break on runtime errors), or 2 (full debug mode). 

$.level = 0; 
$.writeln("something"); 
alert("Hello World"); 

編輯:
我試着用上面的腳本調試級別。它仍然打開ESTK :-( 看起來這是行不通的任何人都可以證實這一點

+1

級別在Win7 CS3或CS5上不適用於我。 writeln總是帶來ESTK。在將腳本發佈到產品之前,我總是確保刪除所有writeln語句... – 2014-11-22 15:14:38

+0

我已經從主腳本中刪除了所有的writln語句,但留下了一個只寫了空白行的小型util腳本,所以我完全錯過了它。刪除了這個,現在它正在工作歡呼。 – popClingwrap 2014-11-24 09:42:52

+0

我總是添加一個名爲DEBUG的全局變量,並添加'if(DEBUG)$ .writeln()'對我來說工作正常。 – fabianmoronzirfas 2014-11-24 13:15:00

0

$ .LEVEL = 0;?

「目前的調試級別,其啓用或禁用JavaScript的 調試器。只讀。「第217

但是,當腳本ESTK $ .LEVEL ==運行1

當從APP $ .LEVEL == 0

Аnd解決方案可能是if ($.level) $.writeln("JSC");