On Dec 5, 2007, at 15:14, Derek Fawcus wrote:
Actually - just what does '-psn_' imply?
It is passing in the process serial number on the command line AFAICT.
Given that it is passed when started by launch services, I was assuming it meant the 'TransformProcessType' has already been called by the process before the exec(2) was called to start the application.
I don't think it transforms the process type so much as it starts thay way by looking at the plist.
i.e. that the app is being informed about the PSN which has already created.
I think you're confused here (or maybe I am). Each process has a psn associated with it which is analogous to a unix pid (and you can map between the two). So the process knows its psn, and LaunchServices just makes it easier to get the info by passing it on the command line as well.
This would seem to fit with keyboard events being available for an program run from the cli which then uses TransformProcessType (i.e. not in a bundle, and not started by 'open -a').
Actually, I don't think it has to do with it being a bundle versus not. I think it has to do with being a foreground versus a background application. --Jeremy