我正在尝试复制一些有关辅助功能窗口选项的信息。不幸的是,我无法解决由 AXUIElementCopyAttributeValue 方法引起的错误,尽管将似乎所有正确的类型作为参数传入。
代码:
for entry in windowList! as Array {
let ownerName: String = entry.object(forKey: kCGWindowName) as? String ?? "N/A"
let ownerPID: Int = entry.object(forKey: kCGWindowOwnerPID) as? Int ?? 0
let pid = Int32(ownerPID)
//3. Get AXUIElement using PID
let windowAccessibilityElem : AXUIElement = AXUIElementCreateApplication(pid)
print(windowAccessibilityElem)
var position : CFTypeRef? = nil
/****
* This line throws the error
****/
let res : AXError = AXUIElementCopyAttributeValue(windowAccessibilityElem, kAXPositionAttribute as CFString, position as! UnsafeMutablePointer<CFTypeRef?>)
print("res is: \(res)")
...
我是 Swift 的新手,但是我已经阅读并重新阅读了有关可选参数的文档,实际上并不清楚传入了什么意外值-我认为这与位置变量有关,但从我请参阅我应该正确传递参考。任何帮助将不胜感激。