[MacRuby-devel] Computer Serial Number

Terry Moore tvmoore at mac.com
Tue Apr 5 14:43:04 PDT 2011



There is no BridgeSupport for IOkit... so ruby is out for now.

like Henry said you can escape to a shell.. or wrap this snippet in an objc class...

#include <CoreFoundation/CoreFoundation.h>
#include <IOKit/IOKitLib.h>

// Returns the serial number as a CFString.
// It is the caller's responsibility to release the returned CFString when done with it.
void CopySerialNumber(CFStringRef *serialNumber)
{
    if (serialNumber != NULL) {
        *serialNumber = NULL;

        io_service_t    platformExpert = IOServiceGetMatchingService(kIOMasterPortDefault,
                                           IOServiceMatching("IOPlatformExpertDevice"));

        if (platformExpert) {
            CFTypeRef serialNumberAsCFString =
                IORegistryEntryCreateCFProperty(platformExpert,
                                                CFSTR(kIOPlatformSerialNumberKey),
                                                kCFAllocatorDefault, 0);
            if (serialNumberAsCFString) {
                *serialNumber = serialNumberAsCFString;
            }

            IOObjectRelease(platformExpert);
        }
    }
}
Quote form MacRuby Dev 17/1/2011
"Looks like I talked too fast, there isn't any BridgeSupport file for IOKit, 
even in Preview 2. I will look into it, as I'm planning to roll out a new 
version soon.

Laurent
"
On 6/04/2011, at 9:26 AM, Henry Maddocks wrote:

> 
> On 6/04/2011, at 9:10 AM, Robert Rice wrote:
> 
>> Hi Gang:
>> 
>> Could anyone help me to read the computer's serial number from a MacRuby program. Since I don't know Objective C, I haven't been able to figure out how to access it.
> 
> system_profile = `system_profiler SPHardwareDataType`
> serial_number = system_profile.match(/Serial Number.*: (.*)/)[1]
> 
> Henry
> 
> 
> _______________________________________________
> MacRuby-devel mailing list
> MacRuby-devel at lists.macosforge.org
> http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macruby-devel/attachments/20110406/ddebb210/attachment.html>


More information about the MacRuby-devel mailing list