2016-11-17 137 views
0

我正在通过.bat脚本调用.jsx脚本(.bat是我的用户必需的启动脚本)。 .jsx正在启动具有特定颜色设置的Photoshop。 .jsx运行后.bat不会继续。打开可执行文件后继续处理bat文件

我可以手动退出Photoshop并继续.bat。任何人有任何想法如何让.bat在调用.jsx之后继续?

蝙蝠脚本:

"C:\Program Files\Adobe\Adobe Photoshop CS6 (64 Bit)\Photoshop.exe" "path\PS_Color_Settings.jsx" 

.jsx脚本:

setColorSettings(); 

function setColorSettings() { 
    var desc = new ActionDescriptor(); 
    var ref = new ActionReference(); 
    ref.putProperty(charIDToTypeID("Prpr"), stringIDToTypeID("colorSettings")); 
    ref.putEnumerated(charIDToTypeID("capp"), charIDToTypeID("Ordn"), charIDToTypeID("Trgt")); 
    desc.putReference(charIDToTypeID("null"), ref); 


    var colorSettingsDesc = new ActionDescriptor(); 
    colorSettingsDesc.putString(stringIDToTypeID("workingRGB"), """sRGB IEC61966-2.1"""); 
    colorSettingsDesc.putEnumerated( stringIDToTypeID("policyRGB"), stringIDToTypeID("policy"), charIDToTypeID("Cnvr")); 
    colorSettingsDesc.putBoolean(stringIDToTypeID("askMismatchOpening"), true); 
    colorSettingsDesc.putBoolean(stringIDToTypeID("askMismatchPasting"), true); 
    colorSettingsDesc.putBoolean(stringIDToTypeID("askMissing"), true); 
    desc.putObject(charIDToTypeID("T "), stringIDToTypeID("colorSettings"), colorSettingsDesc); 
    executeAction(charIDToTypeID("setd"), desc, DialogModes.NO); 
} 

的.jsx运行和Photoshop启动后,将.bat脚本停止,并且不会移动到下一个步骤。我曾尝试在调用.jsx后插入'GOTO'和'END',但似乎没有让.bat脚本返回正常轨道。有任何想法吗?

+0

使用'START'命令来启动该程序。 '开始“”“”C:\ Program Files \ Adob​​e \ Adob​​e Photoshop CS6(64位)\ Photoshop.exe“”路径\ PS_Color_Settings.jsx“' – Squashman

+2

我不认为这是一个Java问题。如果你在上面加上不同的标签,你很可能会从熟悉JSX的人那里得到答案。 –

+0

请注意,JSX未运行Photoshop。相反,JSX文件被提供给Photoshop(如XML或.properties文件),它可以根据需要使用它(可能会在JavaScript环境中执行它来配置自身)。总而言之,这个问题很简单:你希望执行一个可执行文件而不是阻止执行它启动的.bat脚本(@Squashman在上面回答的问题)。 – Aaron

回答

1

尝试START命令(如@Squashman建议):

START "title" [/D path] [options] "command" [parameters]

因此,像这样(为便于阅读,扩大)

@echo off 
set "pspath=C:\Program Files\Adobe\Adobe Photoshop CS6 (64 Bit)\Photoshop.exe" 
set "jsxpath=path\PS_Color_Settings.jsx" 
set "title=not required" 

start "%title%" "%pspath%" "%jsxpath%" 
echo Opened Photoshop, still running... 
pause