Page 1 sur 1
Relancer un processus suspendu
Publié : mar. 11/juil./2017 11:42
par ChaudEf
Bonjour mes amis
Quelqu'un m'a montre le programme process explorer, qui a une option de "suspend" pour suspendre un processus qui est en train de tourner.
Or j'ai vu que certain programmes, notament google chrome, se remmetent en marche automatiquement apres la suspension.
Comment programmer une chose pareil? a priori, a 'instant qu'il est suspendu, il ne peut plus savoir ce qui se passe avec lui, et donc ne peux plus se rallummer!!
Merci
Re: Relancer un processus suspendu
Publié : mar. 11/juil./2017 15:40
par GallyHC
Bonjour,
Je regarde cela pour un de mes programmes (contrôle de lumière de spectacle), ma conclusion est qu'il y a au moins 2 process du programme l'un et celui que l'utilisateur utilises et l'autres un process clone (invisible et même juste programme qui rassemble juste les infos de utilisateur du programme principal) qui fait la même chose vu que le process utilisateur lui donne toutes les informations qu'il ce passe par lui. Donc si le process principal plante ou qu'il est suspendu le programme clone prend le relai ou il renvois le programme avec toutes les informations qu'il a eu.
Maintenant a toi de faire ^^.
Cordialement,
GallyHC
Re: Relancer un processus suspendu
Publié : mar. 11/juil./2017 16:18
par Marc56
Rien de magique dans un système d'exploitation, il suffit de créer une tâche qui relancera le programme.
Planificateur de tâches > Propriétés > Onglets Conditions et Paramètres
Certains programmes utilisent aussi un service qui se charge aussi de surveiller la présence du programme.
Re: Relancer un processus suspendu
Publié : mar. 11/juil./2017 16:24
par ChaudEf
Merci.
Je pense que je vais me pencher sur le service pour relancer le programme.
Quel est la commande pour cela ?
Y a-t-il une API qui fait ca ? (Windows)
Re: Relancer un processus suspendu
Publié : mar. 11/juil./2017 16:32
par Marc56
Un service est un programme qui tourne en arrière plan, sans interaction avec l'utilisateur au premier plan.
Il faut le programmer d'une certaine façon et l'installer aussi d'une manière particulière
Un exemple en PB sur developpez.com
http://f-lefevre.developpez.com/tutorie ... e-windows/
Cela date de 2008, je ne sais pas si cela fonctionne encore (je n'ai pas essayé)
Re: Relancer un processus suspendu
Publié : mar. 11/juil./2017 16:37
par ChaudEf
Merci j'ai déjà fait des services en PB.
Ma question est quel est la commande pour relancer le processus suspendu
edit: J'ai trouve mon bonheur sur le forum anglais :
http://www.purebasic.fr/english/viewtop ... 7&p=437158
Je pensais pouvoir faire ca directement depuis le programme, qu'il ne puisse pas etre suspendu, comme explique ici:
https://www.eldos.com/cbproc/articles/8989.php, mais je crois que ca va etre plus simple de mettre en place un service.
Ce que je me demande maintenant est comment mon service saura quand le programme a ete suspendu? y a-t-il un moyen de verifier ca?
Merci encore
Re: Relancer un processus suspendu
Publié : mer. 12/juil./2017 8:08
par Marc56
comment mon service saura quand le programme a ete suspendu? y a-t-il un moyen de verifier ca?
tasklist
Exemple:
Code : Tout sélectionner
C:\>tasklist | findstr chrome
chrome.exe 28316 Console 1 113 092 Ko
chrome.exe 28776 Console 1 11 820 Ko
chrome.exe 21796 Console 1 12 588 Ko
chrome.exe 30188 Console 1 61 196 Ko
chrome.exe 1100 Console 1 66 248 Ko
chrome.exe 9228 Console 1 58 808 Ko
RunProgram() et analyser la sortie (console ou via un fichier texte)
Re: Relancer un processus suspendu
Publié : mer. 12/juil./2017 9:27
par ChaudEf
Merci.
J'ai essye dans la cmd
avec le processus allume et ensuite avec le processus suspendu, ca me donne toujours le meme resultat.
J'ai mal ecrit la commande?
Re: Relancer un processus suspendu
Publié : jeu. 13/juil./2017 10:55
par celtic88
tu peux utiliser les hook ,je sais c'est un peu illégale mais Seulement pour les bonnes intentions et surtout pour la protection de notre programme contre le debug et hack
https://www.youtube.com/watch?v=omXTwK0lYgs
Re: Relancer un processus suspendu
Publié : jeu. 13/juil./2017 15:00
par ChaudEf
C'est chouette ca..
Tu partage le code ?
Merci beaucoup