Objective-C - 检查 OS X 中的 FileVault 状态
Objective-C - Check FileVault status in OS X
我正在开发一个 Cocoa 应用程序 (Objective-C),它需要确定 FileVault
是否已打开。我尝试在 .plist
中搜索 FileVault
但没有成功。
如有任何帮助,我们将不胜感激,
提前致谢:)干杯
通过 NSTask
相当简单:
@autoreleasepool {
NSTask *task = [[NSTask alloc] init];
[task setLaunchPath:@"/usr/bin/fdesetup"];
[task setArguments:[NSArray arrayWithObjects:@"status", nil]];
NSPipe *pipe = [NSPipe pipe];
[task setStandardOutput: pipe];
NSFileHandle *file = [pipe fileHandleForReading];
[task launch];
NSData *data = [file readDataToEndOfFile];
NSString *string = [[NSString alloc] initWithData: data encoding: NSUTF8StringEncoding];
NSLog (@"%@", string); // FileVault is Off/On.
}
可能有一种方法可以通过 SecKeychain
进行检查,但快速检查可能有点矫枉过正。
我正在开发一个 Cocoa 应用程序 (Objective-C),它需要确定 FileVault
是否已打开。我尝试在 .plist
中搜索 FileVault
但没有成功。
如有任何帮助,我们将不胜感激,
提前致谢:)干杯
通过 NSTask
相当简单:
@autoreleasepool {
NSTask *task = [[NSTask alloc] init];
[task setLaunchPath:@"/usr/bin/fdesetup"];
[task setArguments:[NSArray arrayWithObjects:@"status", nil]];
NSPipe *pipe = [NSPipe pipe];
[task setStandardOutput: pipe];
NSFileHandle *file = [pipe fileHandleForReading];
[task launch];
NSData *data = [file readDataToEndOfFile];
NSString *string = [[NSString alloc] initWithData: data encoding: NSUTF8StringEncoding];
NSLog (@"%@", string); // FileVault is Off/On.
}
可能有一种方法可以通过 SecKeychain
进行检查,但快速检查可能有点矫枉过正。