• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: API for fetching the computer name in cocoa
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: API for fetching the computer name in cocoa


  • Subject: Re: API for fetching the computer name in cocoa
  • From: Graham Cox <email@hidden>
  • Date: Fri, 12 Jun 2009 16:58:20 +1000


On 12/06/2009, at 4:24 PM, Gerriet M. Denkmann wrote:


On 11 Jun 2009, at 18:55, Graham Cox <email@hidden> wrote:

On 12/06/2009, at 2:08 AM, Arun wrote:

Hi All,

Is there any API in cocoa which can be used to fetch computer name
which is
getting displayed in Finder?

I'm not sure if there's a better way, but you can use the Gestalt function with the gestaltUserVisibleMachineName selector.

I tried:
SInt32 response = 0xdeadbeef;
OSErr resul1 = Gestalt( gestaltUserVisibleMachineName, &response );
if ( resul1 != noErr ) .... // error handling
NSLog(@"%s response = %ld = %#lx", __FUNCTION__, response, response);
and got no error and:
response = 1224224 = 0x12ae20


Where is my mistake?


I think this is not the right way to get the info you want after all - others have pointed out better APIs. According to the header for this:

enum {
/* On Mac OS X, the user visible machine name may something like "PowerMac3,4", which is*/
/* a unique string for each signifigant Macintosh computer which Apple creates, but is*/
/* not terribly useful as a user visible string.*/
gestaltUserVisibleMachineName = 'mnam' /* Coerce response into a StringPtr to get a user visible machine name */
};


Obviously the meaning of "machine name" depends on what you think that means. A some point this was considered to be the model name. I think what you want is what the user has named it as visible on a network, etc.

But if you want to press on, the response is a StringPtr, which is a pointer to a pascal string. You'll need to convert that to an NSString, first by converting to a C string (generally easy to do - just append a /0 and take the pointer to the 1st character), then an NSString using a suitable encoding.

--Graham


_______________________________________________

Cocoa-dev mailing list (email@hidden)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden


  • Follow-Ups:
    • Re: API for fetching the computer name in cocoa
      • From: "Gerriet M. Denkmann" <email@hidden>
    • Re: API for fetching the computer name in cocoa
      • From: Tito Ciuro <email@hidden>
References: 
 >Re: API for fetching the computer name in cocoa (From: "Gerriet M. Denkmann" <email@hidden>)

  • Prev by Date: Re: API for fetching the computer name in cocoa
  • Next by Date: Re: NSView directly drawn on screen?
  • Previous by thread: Re: API for fetching the computer name in cocoa
  • Next by thread: Re: API for fetching the computer name in cocoa
  • Index(es):
    • Date
    • Thread