Bonjour à tous,
J'ai crée un programme en C++ pour savoir qui utilise un logiciel en particulier sur le réseau en écrivant la liste des utilisateurs en cours dans un fichier texte sur une ressource partagée. Au lieu de lancer le programme via le raccourci habituel, j'ai un fichier .ini qui contient le nom d'utilisateur et la commande à lancer (qui est lancée avec System()). Je précise que la commande doit être libre (dans le fichier ini) et ne pas être en dur dans le code C++, notamment s'il y a des arguments, à ne pas coder dans le code C++, tout doit se passer au niveua du fichier .ini.
Sous Linux, mon programme fonctionne parfaitement, il inscrit l'utilisateur dans le fichier journal, lance le programme, et quand on quitte le programme, il enlève l'utilisateur du fichier journal.
Seulement, le but est de le faire fonctionner sous Windows (je l'ai compilé sous Visual Studio) et quand je lance la commande avec System("C:\Windows\System32\calc.exe") par exemple, il rend la main, comme si on lançait la commande avec le "&" final sous Linux, ce qui est le comportement par défaut sous Windows. Y a-t-il moyen que System() attende la fin du processus lancé au lieu de rendre tout de suite la main ?
Merci.
Jérôme.
Partager