gpt4 book ai didi

macos - 在 COCOA 中以编程方式获取 "GeneratedUID"

转载 作者:行者123 更新时间:2023-12-03 17:11:32 30 4
gpt4 key购买 nike

我正在尝试以编程方式获取系统生成的UID,我可以使用“dscl .-search/Users GenerationUID 00052AE8-5000-6000-9007-666F6B666A66”从命令行获取UID

任何人都可以帮助如何以编程方式获取此 generatedUID 吗?

最佳答案

这对我有用。它返回为当前用户找到的第一个 GenerationUID,如果没有找到则返回 nil。

有很多错误需要处理,使得逻辑比实际应该的更加复杂。

-(NSString*) getGeneratedUID {

NSString* retval = nil;
ODSession *mySession = [ODSession defaultSession];
NSError *err;
ODNode *myNode = [ODNode nodeWithSession:mySession type:kODNodeTypeAuthentication error:&err];
NSString* username = NSUserName();

ODQuery *myQuery = [ODQuery queryWithNode: myNode
forRecordTypes: kODRecordTypeUsers
attribute: kODAttributeTypeRecordName
matchType: kODMatchEqualTo
queryValues: username
returnAttributes: kODAttributeTypeStandardOnly
maximumResults: 0
error: &err];

if (err) {
NSLog(@"Error creating current user query: %@", [err localizedDescription]);
}
else {
NSArray* queryResults = [myQuery resultsAllowingPartial:NO error:&err];

if (err) {
NSLog(@"Error executing current user query: %@", [err localizedDescription]);
}
else {
if ( [queryResults count] > 0 ) {

ODRecord* firstQueryResult = [queryResults objectAtIndex:0];
NSArray* uidValues = [firstQueryResult valuesForAttribute:@kDS1AttrGeneratedUID error:&err];

if (err) {
NSLog(@"Error getting GeneratedUID attribute for current user: %@", [err localizedDescription]);
}
else {
if ([uidValues count] > 0) {
retval = (NSString*) [uidValues objectAtIndex:0];
}
else {
NSLog(@"No GeneratedUID values for current username: %@", username);
}
}
}
else {
NSLog(@"No results from current user query for username: %@", username);
}
}
}

return retval;
}

关于macos - 在 COCOA 中以编程方式获取 "GeneratedUID",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24829191/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com