我设法使用CGWindowListCopyWindowInfo获取桌面上的窗口列表,但下一次是尝试获取窗口的属性,如程序名称,标题和其他属性.
我应该查看什么API,我们有关于如何做到这一点的任何示例?
列出窗口并在循环时检索特定信息:
NSMutableArray *windows = (NSMutableArray *)CGWindowListCopyWindowInfo(kCGWindowListOptionOnScreenOnly | kCGWindowListExcludeDesktopElements, kCGNullWindowID);
for (NSDictionary *window in windows) {
NSString *owner = [window objectForKey:@"kCGWindowOwnerName" ];
NSString *name = [window objectForKey:@"kCGWindowName" ];
NSLog(@"%@ - %@",owner,name);
}
Run Code Online (Sandbox Code Playgroud)
可用键:
kCGWindowIsOnscreen
kCGWindowLayer
kCGWindowMemoryUsage
kCGWindowName
kCGWindowNumber
kCGWindowOwnerName
kCGWindowOwnerPID
kCGWindowSharingState
kCGWindowStoreType
Run Code Online (Sandbox Code Playgroud)