Javascript Photoshop Extendscript-文件已锁定-无法保存

Javascript Photoshop Extendscript-文件已锁定-无法保存,javascript,photoshop,extendscript,toolkit,Javascript,Photoshop,Extendscript,Toolkit,我无法用javascript保存我的文件。 尝试通过“我的脚本”保存文件时出错: 无法将副本另存为“…”,因为文件已锁定,您没有必要的权限,或者其他程序正在使用该文件。使用Windows资源管理器中的“属性”命令解锁文件 如果我按ok,我的脚本会告诉我“用户中止” 我已经使用extendscript工具包成功地编写了一些.jsx来自动化photoshop,但这是第一次从csv列表中读取.psd路径并在photoshop中打开它们 我认为问题是因为“var docRef=app.activeDoc

我无法用javascript保存我的文件。 尝试通过“我的脚本”保存文件时出错:

无法将副本另存为“…”,因为文件已锁定,您没有必要的权限,或者其他程序正在使用该文件。使用Windows资源管理器中的“属性”命令解锁文件

如果我按ok,我的脚本会告诉我“用户中止”

我已经使用extendscript工具包成功地编写了一些.jsx来自动化photoshop,但这是第一次从csv列表中读取.psd路径并在photoshop中打开它们

我认为问题是因为“var docRef=app.activeDocument;”是在我的savePng函数中创建的,同时还在循环中读取我的.csv

这是我代码的一部分,我正在循环我的所有photoshop文件,并试图将它们保存为.png

我在这里执行一些功能来处理我的自动化

for (var i = 0; i <= lineslength - 2; i++){
    if(typeof lines[i] !== "undefined")
    {
        app.open(new File(lines[i]));
        var docname = app.activeDocument;
        var filenamelong = docname.name
        var filename = filenamelong.substring(4, filenamelong.length - 4);
        clickonlayer()
        createlayer()
        isolate()
        maskinput("image_mask")
        try {
            maskadd("image2_mask")
            maskadd("image3_mask")
            maskadd("image4_mask")
        }
        catch(error){
        }
        setcolor()
        deselect()
        savePng(filename)
        activeDocument.close(SaveOptions.DONOTSAVECHANGES);
        filenew.writeln(lines[i] + "        EXPORTED")
    } 
}
通常在我的photoshop脚本中,我打开一个文件并创建app.activeDocument变量,但这次需要在通过脚本打开文件后创建该变量

谢谢你的帮助

var filepath = psdname + '.png'
我相信应该有

var filepath = exppath + "/" + psdname + '.png'

您是否尝试过使用不同的路径?错误消息基本上解释了这个问题,它与变量无关。我尝试了不同的方法。没什么不同。我的一个解决方法是使用遗留函数“Save for web”。这可能是您的问题
var filename=filenamelong.substring(4,filenamelong.length-4)123.psd
文件名成为
的一个优点,但我有很长的命名约定,所以情况并非如此。
var filepath = exppath + "/" + psdname + '.png'