嗨,我是用DiskArbitration.framework獲得磁盤列表可可得到磁盤的NSArray
+(NSArray*)arrayOfDisks {
DASessionRef session = DASessionCreate(kCFAllocatorDefault);
if (session) {
DARegisterDiskAppearedCallback(session, NULL, driveGo, NULL);
DASessionScheduleWithRunLoop(session,
CFRunLoopGetCurrent(), kCFRunLoopDefaultMode);
CFRelease(session);
}
return nil;
}
void driveGo(DADiskRef disk, void *context) {
NSLog(@"%s", DADiskGetBSDName(disk));
}
它記錄了就好了,但我怎麼能回到陣回來嗎? 它只是循環,所以我甚至不知道如何檢查是否完成。
我不能回盤怎麼把它不arrayOfDisks方法存在的,無效driveGo看起來像呼叫幾次,所以不能退貨也 – user840250 2012-08-01 18:46:39
DARegisterDiskAppearedCallback應該使用無效:( 我在嘗試讓所有磁盤的NSArray我的可可應用程序 – user840250 2012-08-01 18:55:44