9

コードを使用して自分の Mac システムを一意に識別したいと考えています。[この Mac について] にハードウェア UUID があります。では、MAC OS X から一意の uuid にプログラムでアクセスする方法を説明します。

私の問題に対する別の提案があれば、親切に教えてください。

4

2 に答える 2

3

ここから: https://stackoverflow.com/a/2754563/610351

void get_platform_uuid(char * buf, int bufSize) {
    io_registry_entry_t ioRegistryRoot = IORegistryEntryFromPath(kIOMasterPortDefault, "IOService:/");
    CFStringRef uuidCf = (CFStringRef) IORegistryEntryCreateCFProperty(ioRegistryRoot, CFSTR(kIOPlatformUUIDKey), kCFAllocatorDefault, 0);
    IOObjectRelease(ioRegistryRoot);
    CFStringGetCString(uuidCf, buf, bufSize, kCFStringEncodingMacRoman);
    CFRelease(uuidCf);    
}

CFStringGetCString を NSString* への単純な変換に置き換えることができます。

于 2012-06-20T06:43:16.247 に答える