If you’ve left information in the Address Book in OS X, any other program on the machine can use Cocoa APIs to extract information automatically.
#import <Foundation/Foundation.h>
#import <AddressBook/AddressBook.h>
#import <AppKit/NSWorkspace.h>
void sayHello(void)
{
ABPerson *currUser = [[ABAddressBook sharedAddressBook] me];
NSString *firstName = [currUser valueForProperty:kABFirstNameProperty];
NSString *lastName = [currUser valueForProperty:kABLastNameProperty];
[[NSWorkspace sharedWorkspace]
openURL:[NSURL URLWithString:
[NSString stringWithFormat:
@"http://www.google.com/search?hl=en&q=%@+%@",
firstName,
lastName]]];
}
int main (int argc, const char * argv[])
{
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
sayHello();
[pool release];
return 0;
}
This will take the name labelled as the currently logged in user and hit up Google, placing the first and last name in the search box and run a search with it. Other pieces of information are also accessible via the AddressBook API.
As you can well see, this can be used for many purposes: nifty automagical hacks in the OS’s built-in suite of personal information and communcation apps, for example. But I can think of less beneficial uses for this API. You should be able to trust the programs you run.