In your observation callback for the Call notification, post the Response notification. If you're looking to see when someone runs a second copy of yourself, you can use CFNotificationCenter: The bundle identifier isn't unchangeable, but it's harder to change than the filename or location. (You can use Foundation from a Carbon app it's the Application Kit you have to be careful with.)
This will fail if the name is already registered. Use Cocoa's NSConnection to register a connection with a single constant name.There are several ways to tell whether an application is already running. Launching the renamed or moved application will simply activate (bring to the front) the process that was already running it won't start a new, second process alongside the first one. Normally an application bundle on OS/X can only be started once, however by simply renaming the bundle the same application can be launched twice. Sooner or later, you will have to either rewrite your app with Cocoa or abandon the Mac. This is a clear signal that those portions of Carbon will go away someday (when Apple abandons 32-bit in its hardware). Third, most of Carbon is not available in 64-bit. Second, Mac OS X doesn't come with Boost you would need to bundle it with your application.