J'avais besoin de quelque chose de similaire aujourd'hui. Comme je n'ai pas trouvé de solution de dépendance externe que j'aimais car je ne suis pas vraiment fan de VBScript / Powershell, j'ai continué et j'en ai écrit une:
https://github.com/cubiclesoft/messagebox-windows
Les boîtes de message qu'il génère sont modales par rapport à la fenêtre de console actuelle. Autrement dit, l'utilisateur ne peut rien faire tant qu'il n'a pas fermé la boîte de dialogue. En outre, le code de retour de l' MessageBox()
appel est renvoyé à l'appelant afin qu'un script puisse réagir à n'importe quel bouton enfoncé. Et, bien sûr, il prend en charge la gamme complète des options de l' MessageBox()
API Win32.
L'ajout d'un exécutable de 80 Ko au mélange n'est peut-être pas la tasse de thé de tout le monde. Il est cependant lié statiquement à l'environnement d'exécution VC ++ et prend en charge Unicode, ce qui explique pourquoi le fichier est si volumineux compte tenu de la nature minimaliste de ce qu'il fait. Et il y a un problème mineur de ne pas pouvoir passer facilement des sauts de ligne à partir de la ligne de commande pour afficher des messages multilignes. Sur un point mineur, il affiche la boîte de dialogue en moins de temps d'horloge murale que toutes les autres solutions présentées jusqu'à présent.
Bien sûr, si la taille du fichier n'a pas d'importance et que les boîtes de dialogue créent une expérience utilisateur trop "en face" et / ou ne nécessitent pas d'interaction avec l'utilisateur, j'ai également rencontré ce projet astucieux:
https://www.paralint.com/projects/notifu/
Qui affiche une bulle contextuelle dans la zone de notification d'état de l'écran à l'aide de IUserNotification . L'inconvénient est que l'exécutable Notifu s'exécute un peu moins de 240 Ko. Un autre exemple malheureux que COM crée des ballonnements inutiles et me laisse souhaiter qu'il y ait une API simple et légère pour la fonctionnalité.
Pour quelque chose de multiplateforme, il y a de la zénité. C'est principalement pour Linux mais il y a aussi des ports Mac et Windows. Le port Windows de zenity est supérieur à 1 Mo car, bien, GTK est assez gonflé.
msg
commande. Vous ne pouvez pas l'avoir si vous exécutez une édition familiale de Windows, mais vous pouvez l'ajouter en copiant et collant simplement msg.exe à partir d'une installation Pro.