Empêcher l'arrêt d'un batch par l'utilisateur. - Shell/Batch - Programmation
Marsh Posté le 13-02-2006 à 09:37:21
slt,
tu peux pas faire un programme qui lance le batch mais en daemon ?
je sais que en C (sharp) cest possible, ensuite..je sais pas.
Marsh Posté le 13-02-2006 à 09:54:52
shreck a écrit : slt, |
Si tu pouvais peut-être développer un peu plus, ça m'aiderait beaucoup. Sinon, je vais essayer de me renseigner.
Marsh Posté le 13-02-2006 à 10:23:39
renseigne toi sur le C#, System.Diagnostics et Process.Start
exemple de Process.Start :
Process.Start(@"cmd.exe",@"/c tracert.exe" );
// lance un programme "tracert.exe" a partir du shell
donc pour toi ca sera plutot
Process.Start(@"cmd.exe",@"/c MonProg.bat" );
dans les options de Process.Start il doit y en avoir une qui permet de cacher la fenetre que tu lance
va voir dans les docs MSDN.
Marsh Posté le 13-02-2006 à 10:38:06
Merci, je vais me renseigner.
Sinon si d'autres personnes connaissent d'autres moyens, je suis ouvert à toutes propositions (non-sexuelle bien sûr)
Marsh Posté le 13-02-2006 à 12:55:37
ReplyMarsh Posté le 22-02-2006 à 15:42:49
wackevat a écrit : Google pour RunHiddenConsole.exe, ce serait peut-être plus simple pour toi. |
Désolé de revenir sur le sujet si tard mais j'ai eu quelques empêchements.
En me renseignant un peu, j'ai pu trouver quelques informations sur le "RunHiddenConsole" et cela ressemble très fortement à ce que je voudrais
Malheureusement, je n'arrive pas à le mettre en place.
Si quelqu'un l'a déjà utilisé, je suis prêt à devenir son apprenti.
Merci
Edit : Finalement je penses avoir trouvé mon erreur. Par contre, une fois la fenêtre cachée, elle appparait dans les processus. Mais existe-t-il un quelconque moyen de la faire réapparaître ?
Marsh Posté le 13-02-2006 à 09:16:31
Bonjours,
Voilà la situation :
J'ai en fait créé un batch qui se doit de tourner en permanence. Or, ce batch est sur une console de visualisation (console à laquelle n'importe quel utilisateur à accès) et c'est là tout mon problème. En effet, je n'avais pas prévu que les utilisateurs s'amuseraient à fermer mon batch : "Parce que ce n'est pas joli dans la barre des tâches" dixit un utilisateur. En attendant, cela s'avère extrêmement génant - surtout que cela arrive quasi tout les jours -.
J'aimerais donc savoir s'il y a un quelconque moyen de les empêcher de le fermer. J'ai envisagé plusieurs options que voici :
*Griser la "croix de fermeture"
*Mettre mon batch en service (bien sûr les utilisateurs auraient toujours la possibilité de le fermer mais ce serait déjà moins évident)
*Demander une confirmation losque l'on tente de fermer mon batch (ce serait déjà ça de pris)
*Dans un autre sujet, il avait été dit que l'on pouvait éventuellement gérer les évènements windows. Mais cela me semble assez complexe à mettre en place. Enfin je ne sais pas...
Mais voilà, je n'ai aucune idée de comment mettre en place ces idées.
P.S : J'avais déjà tenté de mettre un deuxième batch qui relance automatiquement le premier mais évidemment on me ferme les deux...
Merci d'avance
Message édité par Tyam le 13-02-2006 à 09:17:53