Skip navigation.
 
mlRe: Getting Current System Version
FROM : Shaun Wexler
DATE : Mon Apr 11 08:35:17 2005

On Apr 9, 2005, at 9:16 PM, Dan Saul wrote:

> Hello there, I am having trouble getting my code to detect the current
> operating system using Gestalt, I am running 10.3.


typedef enum {
   TRVersionNotChecked = -2,
   TRUnknownVersion,
   TRCheetahVersion,
   TRPumaVersion,
   TRJaguarVersion,
   TRPantherVersion,
   TRTigerVersion
} TROperatingSystemVersion;

+ (TROperatingSystemVersion)operatingSystemVersion
{
   static operatingSystemVersion = TRVersionNotChecked;
   if (operatingSystemVersion == TRVersionNotChecked)
   {
       long response;
       if (Gestalt(gestaltSystemVersion, &response) != noErr) {
           [NSException raise:@"Gestalt Exception"
format:@"gestaltSystemVersion failed"];
       }
       if (response >= 0x1050 || response < 0x1000) {
           operatingSystemVersion = TRUnknownVersion;
       }
       else if (response >= 0x1040) {
           operatingSystemVersion = TRTigerVersion;
       }
       else if (response >= 0x1030) {
           operatingSystemVersion = TRPantherVersion;
       }
       else if (response >= 0x1020) {
           operatingSystemVersion = TRJaguarVersion;
       }
       else if (response >= 0x1010) {
           operatingSystemVersion = TRPumaVersion;
       }
       else if (response >= 0x1000) {
           operatingSystemVersion = TRCheetahVersion;
       }
   }

   return operatingSystemVersion;
}
--
Shaun Wexler
MacFOH
http://www.macfoh.com

Related mailsAuthorDate
mlGetting Current System Version Dan Saul Apr 10, 06:16
mlRe: Getting Current System Version Finlay Dobbie Apr 10, 14:55
mlRe: Getting Current System Version Shaun Wexler Apr 11, 08:35
mlRe: Getting Current System Version Shaun Wexler Apr 11, 08:42