对话框 - 没有构造函数

时间:2017-01-26 15:38:57

标签: javascript windows dialog photoshop-script

我尝试创建对话框时间歇性地成功。代码有效。

try
{
    // Create an empty dialog window near the upper left of the screen
    var dlg = new Window("dialog", "Alert Box Builder");
    dlg.frameLocation = [100,100];
    dlg.show();
}
catch(e)
{
    alert(e);
}

有时它有效,有时我会收到错误:

Error 22:Window does not have a constructor

我不知道为什么。删除Photoshop首选项和/或以管理员身份运行似乎不起作用(在Win7上运行CC)。

1 个答案:

答案 0 :(得分:0)

除非有时Photoshop损坏首选项文件,否则我无法解释这一点,这会导致创建用户界面元素时出现进一步的问题。当然我在Windows上遇到过这种情况。最好的办法是摆脱首选项文件。这是一个很大的痛苦,因为它会将Photoshop设置回默认设置。因此,在删除首选项文件之前,请创建首选项文件的快照,以及是否可以将工作区保存为默认模式以外的其他文件。

首选项文件在C:\ YOURUSERNAME \ AppData \ Roaming \ Adob​​e \ Photoshop SCX中找到Adobe Photoshop SCX Prefs.psp

其中CSX是Photoshop的版本号

  • 删除首选项文件。
  • 重新启动Photoshop(它将创建一个新的首选项文件)
  • 关闭Photoshop。
  • 在新创建的帐户上复制您的首选项备份。
  • 重新启动Photoshop。

显而易见的事情是跳过第一阶段,然后通过备份复制首选项文件。这不会强制Photoshop生成新的首选项,并且Windows构造函数错误将持续存在。

我可以建议您将代码修改为

catch(e)
{
    //alert(e);
   alert("Photoshop was unable to create User Interface"); 
}

这样你就会知道它是一个窗口构造错误,而不仅仅是代码中的错误。我真的没办法绕过它,我很害怕。