gpt4 book ai didi

AppleScript:获取对象或类的所有属性的列表

转载 作者:行者123 更新时间:2023-12-04 05:09:38 28 4
gpt4 key购买 nike

为了存储用于外部(外部AS)访问的对象的值,我需要能够获取该对象的每个属性,然后尝试将其强制转换为文本并将其存储在某个地方。

如何获取对象拥有的属性列表。例如,我可以这样写:

tell me
get properties
end tell

这适用于脚本对象。

但是对于许多其他对象,我只会得到诸如“描述符类型不匹配”之类的错误,如下所示:
tell application "iTunes"
get properties of file track 1
end tell

现在,我知道出色的 脚本调试器可以做到(它可以显示任何对象的整个属性集),因此也可以用AppleScript编写。这有什么秘诀?

最佳答案

脚本调试器的作者Mark Alldritt很乐意向我解释“ secret ”。

脚本调试器使用一些特殊的AppleScript API函数(包括OSAGetPropertyNames())来获取此信息。

因此,如果我用C语言编写一个包装器,那么我也可能会做到这一点。

更新

Cocoa脚本API为此有一个专用类(NSScriptSuiteRegistryNSScriptClassDescription)-框架通过读取应用程序的脚本定义(.sdef)文件来构建此信息。这样,所有可用的类及其属性都可以很容易地学习。

关于AppleScript:获取对象或类的所有属性的列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4240039/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com