Computer Serial Number
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. Thanks, Bob Rice
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
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@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
Thanks for the help. The shell script is working for me. Bob Rice On Apr 5, 2011, at 5:43 PM, Terry Moore wrote:
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...
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@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
_______________________________________________ MacRuby-devel mailing list MacRuby-devel@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
participants (3)
-
Henry Maddocks
-
Robert Rice
-
Terry Moore