開いているウィンドウのリストとその PID を取得しようとしています。
これは私が思いついたコードです:
CFArrayRef windowList = CGWindowListCreate(kCGWindowListOptionOnScreenOnly, kCGNullWindowID);
if (windowList == nil || NULL)
NSLog(@"The List is null");
for(NSMutableDictionary *entry in (__bridge NSArray *)windowList){
NSString *ownerName = [entry objectForKey:(__bridge id)kCGWindowOwnerName];
NSInteger ownerPID = [[entry objectForKey:( __bridge id)kCGWindowOwnerPID]integerValue];
NSLog(@"%@:%ld",ownerName, ownerPID);
}
ownerName を宣言する行で例外が発生します (スレッド 1: SIGBART)
何が問題なのかわかりません.... CFArrayRef は NULL/nil ではありません