2013-10-17 129 views
0

我试图获得打开的窗口及其PID的列表。获取打开的Windows错误列表

这是我想出的代码:

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 /零

回答

0

我想你需要检查你的数组中的所有数据不是字典的形式。所以可能是你的所有者名称存在数组中的数组,然后inaide字典。因为你得到错误