John,
thanks for all your excellent help.
>
> If you duplicate the app, that duped copy is a separate file which
> can make a separate instance of the app. That's by design.
Thanks. That sounds fine.
>
> File associations are not bound to a path. The app can be found by
> the OS no matter where it lives. (I believe Launch Services maintains
> an alias to the app, but that is just a guess... anyway, it doesn't
> matter, that part "just works.")
>
You're right.
I have a related concern. Our application is associated with documents that have a .dart suffix. The problem is that that suffix is already used by Apple: com.apple.disk-image-dart.
We can't really change it, because it's already in use on other platforms. And we like it.
Currently I'm overriding this default in a way that's working but is kind of ugly. I haven't encountered a .dart disk image before, and it doesn't seem to be in much use, so I think overriding this is fairly safe.
Here's how I'm doing it:
{ defaults read com.apple.LaunchServices 2>&1 | grep dartdevices.dartplayer > /dev/null
} || {
defaults write com.apple.LaunchServices LSHandlers -array-add '<dict><key>LSHandlerContentType</key><string>com.apple.disk-image-dart</string><key>LSHandlerRoleAll</key><string>com.dartdevices.dartplayer</string></dict>'
/System/Library/Frameworks/ApplicationServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -kill -r -domain local -domain system -domain user
}
The defaults command is used first to ensure I don't do this twice.
Then, if it's not already set, I add a default for this user to use our app instead of the Apple default.
Then I use lsregister to reset the users LaunchServices -- otherwise it doesn't seem to take.
Is all this safe? Is there a better way to do this?
--Daniel
_________________________________________________________________
Try amazing new 3D maps
http://maps.live.com/?wip=51 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Carbon-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/carbon-dev/email@hidden
This email sent to email@hidden