Comment faire pour executer le reste du script si une des fonction bloc
Bonjour,
J'ai réalisé un programme qui exécute un exécutable externe par la biais de la fonction "systeme()".
Le soucie est que certaines fois, ce programme externe se fige et ne fais plus rien. Ce programme externe s'appelle "Xcmd.exe" (c'est un remote controle en ligne de commande). J'aimerai savoir comment faire pour mettre une genre de temporisation à la commande système qui lui dirai si celui ci n'a pas fini ca tâche après quelques seconde, passé à la suite...
Voici ma fonction qui utilise Xcmd.exe :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| #include <string.h>
#define TAILLE_COMMANDE 512
int scan(const char *ip)
{
char commande [TAILLE_COMMANDE];
// On créer notre futur commande ms_dos (Xcmd)
strcpy(commande, "xCmd.exe \\\\");
strcat(commande, ip);
strcat(commande, " /NOWAIT /HIGH /D:%SystemRoot%\\temp "); // Don't wait for remote process to terminate, High priority class, Set working directory
strcat(commande, "\""); // Pour prendre en compte toute la commande à executer dans Xcmd
strcat(commande, "MD temp & CD temp &"); // Création d'un dossier et aller dedans
strcat(commande, " START \\\\Akffs10\\UNIX\\AFN\\install_OCS_inventory\\ocs-ng\\OCSInventory.exe /SERVER:AKF1118.***.*****.int"); // Executer l'application à distance
strcat(commande, "\""); // Pour prendre en compte toute la commande à executer dans Xcmd
int result_xcmd=system(commande); // execution de la commande
system("echo.");
// Test si toutes les manipulations se sont bien déroulés
if (result_xcmd==0)
{
return 1;
}
else
{
return 0;
}
} |