以下脚本在AppleScript编辑器中运行时可根据需要运行,但在导出为.app并直接运行时则无法运行。
tell application "Finder"
set fld to choose folder with prompt "Choose a volume" default location ("/Volumes")
set n to name of fld
set f to format of fld
display dialog n & " is formatted as " & f
end tell
(*
When run from Script Editor result is:
Macbook HD is formatted as Mac OS Extended format
When run from a compiled app result is:
Macbook HD is formatted as «constant ****dfh+»
*)
我正在运行OS X 10.11.6(15G22010)。欢迎进行修复或解决。
答案 0 :(得分:1)
问题在于$data = array_merge($var1, $var2);
是一个枚举常量(实际上是整数值)。无法在Mac OS Extended format
Tell块之外访问它,并且在应用程序中,Finder
行显然被视为在Tell块之外。您必须将枚举强制为文本。
我建议使用此代码,它使用display dialog
的{{1}}类并列出磁盘
disk
编辑:由于错误,以上代码显然无法正常工作。
这是一种替代方法,在AppleScriptObjC和Foundation框架的帮助下
System Events