LSUIElement sous Tiger
Bonjour,
Je suis face à un problème. Dans mon application, je propose d'afficher ou de masquer son icône dans le Dock (donc je touche à LSUIElement).
Sous Leopard, pas de problème, le relaunch de l'application prend bien en compte le changement.
Mais sous Tiger, c'est autre chose. Les changements de Info.plist sont pris en compte qu'au redémarrage de la machine !!!
J'ai raté quelque chose ? Même si je modifie le Info.plist à la main, il faut redémarrer la machine..
Note de dernière minute : si on duplique l'application les changements du Info.plist sont pris en compte
Je suis face à un problème. Dans mon application, je propose d'afficher ou de masquer son icône dans le Dock (donc je touche à LSUIElement).
Sous Leopard, pas de problème, le relaunch de l'application prend bien en compte le changement.
Mais sous Tiger, c'est autre chose. Les changements de Info.plist sont pris en compte qu'au redémarrage de la machine !!!
J'ai raté quelque chose ? Même si je modifie le Info.plist à la main, il faut redémarrer la machine..
Note de dernière minute : si on duplique l'application les changements du Info.plist sont pris en compte
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Donc nul besoin de redémarrer. Tu peux aussi déplacer ton appli puis la remettre en place (dans le cas de versions debug) ou encore relancer le Finder. Mais vu ce que tu veux faire, c'est un peu sortir la grosse artillerie et un "touch" devrait faire l'affaire.
EDIT: par curiosité, j'ai consulté le code source de QuickSilver.
Après avoir modifié le Info.plist, il y a la ligne:
[tt]NSFileManager defaultManager] changeFileAttributes:[NSDictionary dictionaryWithObject:[NSDate date] forKey:NSFileModificationDate] atPath: [[NSBundle mainBundle] bundlePath;[/tt]
Ce qui revient au même que de faire un "touch".
(Merci à Psycho)
On peut aussi le faire en AppleScript...
(c'est peut-être même plus propre)
J'ai préféré le C, y'a trop d'AppleScript déjà dans mon logiciel