Mac os x以编程方式获取域名

时间:2013-06-05 06:43:52

标签: objective-c c macos cocoa networking

我知道Windows工作组,并且想知道我的Mac的工作组。正如我所见Open Directory directory domain name on Mac OS X但无法摆脱我的问题。 我希望找到我的Mac的工作组(如在Windows中)。 请给我一些代码示例,以便继续解决问题。 我希望域名被描述为 http://windows.microsoft.com/en-in/windows7/what-is-the-difference-between-a-domain-a-workgroup-and-a-homegroup

1 个答案:

答案 0 :(得分:6)

系统配置框架是一个C api,所以它有点乱,但这个应该正常工作而不会泄漏:

#import <SystemConfiguration/SCNetworkConfiguration.h>

SCDynamicStoreRef storeRef = SCDynamicStoreCreate(NULL, (CFStringRef)@"GetWorkgroup", NULL, NULL);
CFPropertyListRef global = SCDynamicStoreCopyValue (storeRef,CFSTR("State:/Network/Global/SMB"));
id workgroup = [(__bridge NSDictionary *)global valueForKey:@"Workgroup"];
NSLog(@"Workgroup: %@", workgroup);
CFRelease(global);
CFRelease(storeRef);