2011-10-31 4 views
0

J'ai créé un outil de ligne de commande. J'ai presque terminé mon projet, mais maintenant je dois créer une interface utilisateur pour demander les informations d'identification de l'utilisateur. Est-il possible d'ajouter une fenêtre à mon projet en ligne de commande, ou je dois créer une application de cacao pour le faire?Outil de ligne de commande avec interface utilisateur

+2

Les outils de ligne de commande ne demandent pas d'informations d'identification, ils doivent être exécutés à partir de 'sudo'. – hamstergene

+0

Ok, mais si j'ai besoin de demander des informations d'identification dans une fenêtre personnalisée, dois-je créer une application de cacao? – Ana

+0

@Ana: Si vous avez besoin de demander des informations d'identification, faites-le sur la ligne de commande en utilisant stdio et, pour le mot de passe, 'getpass'. Si vous avez besoin de pouvoirs root, faites ce que hamstergene a dit: Attendez-vous à avoir déjà des pouvoirs root, et se plaindre à l'utilisateur si vous ne les avez pas. –

Répondre

1

Un outil de ligne de commande n'aura pas de connexion au serveur de fenêtre (c'est fait par NSApplication), donc non, il ne peut pas créer une fenêtre. Si vous avez besoin d'afficher une fenêtre pour une raison quelconque, il devrait probablement s'agir d'une application à ce moment-là, alors vous devriez aller avec cela et en faire un.

0

Une application Cocoa fonctionnerait. Je n'ai pas utilisé Tcl/Tk ou MacRuby, mais si vous êtes tout nouveau avec Cocoa, vous aurez peut-être du mal à les récupérer.

Vous ne pouvez pas faire cela dans AppleScript sans utiliser les API AppKit; voir Prompt user for password with dialog window when using sudo. Si vous posez vraiment une question Xcode, vous pourriez vouloir republier quelque chose de plus spécifique, comme "comment puis-je convertir mon projet en ligne de commande pour que je puisse ajouter une fenêtre Cocoa".

Questions connexes