我有问题是运行代码记录的ScriptListener插件。我已经将命令从日志复制到Extendscript CC中,但是每当我运行这些命令(不管是否函数),它们都会在executeAction代码行中失败,并说“此功能可能在此版本的Photoshop中不可用”
这是我试图运行的代码:
function pasteAsPath() {
var idinvokeCommand = stringIDToTypeID( "invokeCommand" );
var desc32 = new ActionDescriptor();
var idcommandID = stringIDToTypeID( "commandID" );
desc32.putInteger( idcommandID, 105 );
var idkcanDispatchWhileModal = stringIDToTypeID( "kcanDispatchWhileModal" );
desc32.putBoolean( idkcanDispatchWhileModal, true );
executeAction( idinvokeCommand, desc32, DialogModes.NO );
// =======================================================
var idmodalStateChanged = stringIDToTypeID( "modalStateChanged" );
var desc33 = new ActionDescriptor();
var idLvl = charIDToTypeID( "Lvl " );
desc33.putInteger( idLvl, 1 );
var idStte = charIDToTypeID( "Stte" );
var idStte = charIDToTypeID( "Stte" );
var identer = stringIDToTypeID( "enter" );
desc33.putEnumerated( idStte, idStte, identer );
var idkcanDispatchWhileModal = stringIDToTypeID( "kcanDispatchWhileModal" );
desc33.putBoolean( idkcanDispatchWhileModal, true );
var idTtl = charIDToTypeID( "Ttl " );
desc33.putString( idTtl, """Paste""" );
executeAction( idmodalStateChanged, desc33, DialogModes.NO );
// =======================================================
var idmodalStateChanged = stringIDToTypeID( "modalStateChanged" );
var desc34 = new ActionDescriptor();
var idLvl = charIDToTypeID( "Lvl " );
desc34.putInteger( idLvl, 0 );
var idStte = charIDToTypeID( "Stte" );
var idStte = charIDToTypeID( "Stte" );
var idexit = stringIDToTypeID( "exit" );
desc34.putEnumerated( idStte, idStte, idexit );
var idkcanDispatchWhileModal = stringIDToTypeID( "kcanDispatchWhileModal" );
desc34.putBoolean( idkcanDispatchWhileModal, true );
var idTtl = charIDToTypeID( "Ttl " );
desc34.putString( idTtl, """Paste""" );
executeAction( idmodalStateChanged, desc34, DialogModes.NO );
// =======================================================
var idpast = charIDToTypeID( "past" );
var desc35 = new ActionDescriptor();
var idAs = charIDToTypeID( "As " );
var idPath = charIDToTypeID( "Path" );
desc35.putClass( idAs, idPath );
executeAction( idpast, desc35, DialogModes.NO );
}在Extendscript中,我的目标是Photoshop,在脚本文件的顶部也有#target photoshop,但是它总是在executeAction上失败。没有记录的命令工作正常,只有当我运行一个记录的命令时我才会得到一个错误。
有人知道为什么会这样吗?我一直在查看文档,所以,博客,但找不到方向来完成这一点,因此,任何帮助将不胜感激。
发布于 2018-10-29 09:53:39
尝试删除所有invokeCommand和modalStateChanged块。当从脚本中启动时,它们什么也不做:我认为它们只是在CC2015之后才出现。基本上,这些只是表明有一个模态窗口出现,然后关闭。
https://stackoverflow.com/questions/53034001
复制相似问题