0
전경에 창문이있는 모든 앱의 목록을 신속하게 가져올 수 있습니까? 그런 다음이 창의 크기와 위치를 설정하십시오.화면의 모든 창 크기와 위치를 신속하게 설정하십시오.
내가이
let type = CGWindowListOption.optionOnScreenOnly
let windowList = CGWindowListCopyWindowInfo(type, kCGNullWindowID) as NSArray? as? [[String: AnyObject]]
for entry in windowList!
{
var owner = entry[kCGWindowOwnerName as String] as! String
var bounds = entry[kCGWindowBounds as String] as? [String: Int]
var pid = entry[kCGWindowOwnerPID as String] as? Int32
print ("\(owner) \(bounds) \(pid) ")
if owner == "Erinnerungen"
{ bounds!["X"] = 0
bounds!["Y"] = 0
print("reset bounds")
let appRef = AXUIElementCreateApplication(pid!); //TopLevel Accessability Object of PID
print(appRef)
var value: AnyObject?
let result = AXUIElementCopyAttributeValue(appRef, kAXWindowsAttribute as CFString, &value)
if result == .success, let windowList = value as? [AXUIElement]
{ // DO ANYTHING
} else
{ print("Result no Success or no valid windowlist returnd")
}
}
}
같은 윈도우 속성의 목록을 가져가 지금은 propierties의 일부를 변경하려고하지만, 그 효과가 없습니다. 은 또한 PID의 맨 오시는 방법 개체에 대한의 AttributeValue을 얻으려고 노력하는 AXError (kAXErrorCannotComplete = -25204) 반환
@Martin R의 도움으로 그것을 덕분에있어 해당 오류에 대한 설명은 :은 함수는 메시징이 어떤 식 으로든 실패했거나 함수가 통신하고있는 응용 프로그램이 사용 중이거나 응답이 없기 때문에 완료 할 수 없습니다. –
2 개의 시스템 응용 프로그램 터미널 및 미리 알림을 사용해 보았습니다. 둘 다 kAXErrorCannotComplete = -25204. 시스템 앱이 접근성을 지원해서는 안됩니까? – mica
이 오류를 피하기 위해 샌드 박스를 꺼야했습니다. – mica