Phil Davis wrote:

> I did a little more homework and decided to make one small change. The
> system_profiler option (parameter) as originally coded doesn't work as
> expected on my PowerPC Mac running 10.3.9; it has to be entered in an
> older format to work. But more important, a parameter that asks
> system_profiler for USB-only info makes it run between 2x and 7x
> faster (roughly) depending on the state of the USB drive
> (mounted/unmounted/removed).

Thanks Phil! Good work. It's one thing to craft a useful handler, and another to refine and optimize it.

That's a very helpful contribution to the community.


--
 Richard Gaskin Managing Editor, revJournal
 _______________________________________________________
 Rev tips, tutorials and more: http://www.revJournal.com


So here's the updated function, ready for action on PowerPC or Intel Mac:



function u3SerialNumbers
   # Return the serial numbers of all U3 drives currently known to the OS.

   switch the platform

   case "Win32"
     return $U3_DEVICE_SERIAL
     break

   case "MacOS"
     set the itemDelimiter to "."
     if the systemVersion < 10 then return empty -- system is not OS X

     -- prep
     put 0 into x
     put empty into tSerialNumberList
     put shell("system_profiler SPUSBDataType") into tProfile

     -- get U3 serial numbers
     repeat
       put lineOffset("U3 smart drive:",tProfile) into xStart
       if xStart = 0 then exit repeat -- no U3 drive was found

       put lineOffset("Serial Number:",tProfile,xStart) + xStart into xSerNum
       put last word of line xSerNum of tProfile & cr after tSerialNumberList
       delete line 1 to xSerNum of tProfile
     end repeat

     delete last char of tSerialNumberList
     return tSerialNumberList
     break

   default
     return empty
     break
   end switch
end u3SerialNumbers



_______________________________________________
use-revolution mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution

Reply via email to