为什么将文件夹拖放到 Applescript 应用程序上会显示一个对话框?



我有一个Applescript应用程序,可以接收放在其图标上的文件或文件夹:

on open theDroppedItems
tell application "Finder"
set droppedItemSourcePath to (the POSIX path of theDroppedItems)
...

在脚本的这一点上,当我的应用收到文件或文件夹时,一个名为"Droplet"的未知且无用的Applescript应用程序会显示一个打开的文件/文件夹对话框。 我的脚本是使用脚本调试器 6 编译为应用程序。

我不明白为什么这个奇怪的"Droplet"应用程序会问我一些事情。

> 错误在于theDroppedItemsalias说明符的列表,即使只删除了一个文件,并且获取列表的 POSIX 路径会引发错误

要获取掉落物品的所有 POSIX 路径,请使用

on open theDroppedItems
set {TID, text item delimiters} to {text item delimiters, return}
set droppedItemsSourcePaths to POSIX path of (theDroppedItems as text)
set text item delimiters to TID
display dialog droppedItemsSourcePaths buttons {"OK"} default button "OK"
...

要逐个处理文件,请使用循环

on open theDroppedItems
repeat with anItem in theDroppedItems
-- do something with anItem
end repeat
...

仅当您要使用查找器术语时,才使用查找器tell块。

提到的Droplet是您的应用程序。

最新更新