Applescript 为什么这个脚本在运行时不偶尔工作?

Applescript 为什么这个脚本在运行时不偶尔工作?,applescript,Applescript,有时,当我运行脚本时,会出现“未找到某个对象的文件”错误,但大多数情况下它仍然有效(我根本没有更改路径) 错误是针对图标的,它高亮显示((指向我的路径)作为错误 有人能告诉我为什么会发生这种情况吗?谢谢你所做的: ((path to me) & "Contents:Resources:Spy.icns" as string) 我在网上找到了正确的解决方案: ((path to me as text) & "::") 不同之处在于,在您的情况下,您让脚本决定在(路径到我)处使用

有时,当我运行脚本时,会出现“未找到某个对象的文件”错误,但大多数情况下它仍然有效(我根本没有更改路径)

错误是针对图标的,它高亮显示((指向我的路径)作为错误

有人能告诉我为什么会发生这种情况吗?谢谢你所做的:

((path to me) & "Contents:Resources:Spy.icns" as string)
我在网上找到了正确的解决方案:

((path to me as text) & "::")
不同之处在于,在您的情况下,您让脚本决定在(路径到我)处使用什么数据类型,然后将其转换为字符串,而网络版本在代码中决定它应该是文本

通常你的版本运行得很好。系统有足够的时间来解释所需内容。我注意到applescript的一点是,如果系统忙着做事情,它通常只会挂断自己。因此,在算法中加入一些事项(如类型转换)会使算法更稳定

让我们更清楚地知道幕后发生了什么。 您的代码:

  • 将脚本的路径设置为“路径类型”
  • 获取文本“Contents:Resources:Spy.icns”
  • 将1和2相加
  • 选择并使其成为文本
  • Net的代码:

  • 将脚本的路径设置为“路径类型”
  • 创建脚本文本的路径
  • 获取文本“Contents:Resources:Spy.icns”
  • 将2和3相加
  • 略有不同,但有时确实很明显


    我希望这对你有用:)

    所以它也适用于这个命令吗
    -将appLocation设置为字符串形式的路径-将文件设置为appLocation&“Contents:Troll.mp3”-告诉应用程序“Finder”打开文件
    ,这样我就可以将字符串更改为text字符串,并且文本在AppleScript:)没有问题!享受语言的乐趣。大约一个月以来,我一直在学习这种奇怪的语言,我很惊讶你能用它做什么:)啊哈,是的,它非常棒
    ((path to me as text) & "::")