Executer un programme après l'arret d'un processus

Fermé
Utilisateur anonyme - Modifié par The_Darck le 7/03/2014 à 22:50
Naheulf Messages postés 287 Date d'inscription vendredi 13 août 2010 Statut Membre Dernière intervention 19 février 2024 - 11 avril 2014 à 14:31
Bonjour,
J'ai retrouver mon vieux jeu "Cossacks - European Wars" et depuis entre temps je suis passé sous Windows 7 mais du coup j'ai lu qu'il y avait un problème d'affichage du jeu à cause du aero de Windows 7...

Du coup j'ai commencé un .exe qui est basé sur une réponse de quelqu'un sur le forum sauf que je voudrai faire tout automatique.

Voici les codes:

@echo off
taskkill /F /IM explorer.exe
CD C:\Program Files (x86)\Cossacks\
start dmcr.exe

Ensuite le jeu se lance sans aucun problème mais c'est juste qu'après je voudrai ajouter une ligne qui fait que dès que le processus de Cossacks s'arrête je souhaiterai qu'il fasse cette commande: start explorer.exe

Ce qui donnerai:

@echo off
taskkill /F /IM explorer.exe
CD C:\Program Files (x86)\Cossacks\
start dmcr.exe
(dès l'arrêt du processus dmcr.exe "cossacks")
start explorer.exe


Sauf que je ne connais pas cette commande. C'est pour cela que je fait appel à vous. Merci

Bien sur après je le transforme en .exe avec icône et je le publie pour que tout le monde puisse avoir ce contournement qui pour moi est le plus simple que j'ai trouvé.

Merci de votre gentillesse.

10 réponses

Je ne sais pas. Toutefois, est-ce que tu as tenté de lancer le jeu en mode compatibilité ?

Avant de poser une question sur CCM, veuillez la poser à Google !
Vous pouvez mettre un "+1" si vous pensez qu'une réponse est utile et mettez en "résolu" à votre question, si c'est le cas !
0
dubcek Messages postés 18755 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 14 novembre 2024 5 620
8 mars 2014 à 08:23
hello
enlever le start avant dmcr.exe
0
Utilisateur anonyme
8 mars 2014 à 09:25
oui j'ai essayer tout les paramètres de compatibilité et rien ne marche vu que le problèmes viens d'explorer.exe!

et je suis obligé de mettre start DRM.exe car sinon il connaît pas la commande...
0
dubcek Messages postés 18755 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 14 novembre 2024 5 620
8 mars 2014 à 09:38
mettre le chemin complet devant
"\chemin\dmcr.exe"
pour le trouver
dir /s/b \dmcr.exe
0
Utilisateur anonyme
8 mars 2014 à 09:58
@echo off
taskkill /F /IM explorer.exe
C:\Program Files (x86)\Cossacks\dmcr.exe
(dès l'arrêt du processus dmcr.exe "cossacks")
start explorer.exe

Comme ça?? ca ne marche pas...

il n'y a que

@echo off
taskkill /F /IM explorer.exe
CD C:\Program Files (x86)\Cossacks\
start dmcr.exe
ping 1.1.1.1 -n 1 -w 50 > nul
start explorer.exe

qui fait ouvrir le jeu correctement mais après dès que explorer est relancé sa fait planté le jeu...
0
dubcek Messages postés 18755 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 14 novembre 2024 5 620
8 mars 2014 à 10:11
avec des "
"C:\Program Files (x86)\Cossacks\dmcr.exe"
0
Utilisateur anonyme
8 mars 2014 à 13:25
nn idem ca me fait une erreur impossible de faire la mission et le jeu me signale qu'il manque un fichier...

Donc ce sera CD C:\Program Files (x86)\Cossacks\
start dmcr.exe

Et ca va très bien!!
0
Naheulf Messages postés 287 Date d'inscription vendredi 13 août 2010 Statut Membre Dernière intervention 19 février 2024 113
14 mars 2014 à 16:54
Tu peut mettre le sujet en résolu ?
0
Salut.

Si je comprends bien :
Tu Kill explorer.exe
Si le processus dmcr.exe est fermé, tu relances explorer.exe


Essaye cela :

@echo off
taskkill /F /IM explorer.exe
CD "C:\Program Files (x86)\Cossacks\"
call dmcr.exe
explorer.exe

Et il faut mettre des guillemets, quand le chemin a au moins un espace.

De plus, Call permet de lancer un fichier... et met en pause le script pendant que le fichier est toujours actif.

@+
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
15 mars 2014 à 13:14
Ça ne fonctionne pas il me kill explorer.exe mais après plus rien, les autres commande ne se lancent pas..
0
dubcek Messages postés 18755 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 14 novembre 2024 5 620
Modifié par dubcek le 15/03/2014 à 14:34
cmd1
cmd2
cmd2 n'est exécuté que quand cmd1 a terminé
que veux-tu faire ?
0
Utilisateur anonyme
15 mars 2014 à 14:27
fr plz?
0
dubcek Messages postés 18755 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 14 novembre 2024 5 620
15 mars 2014 à 14:35
?
0
Utilisateur anonyme
15 mars 2014 à 14:53
qu'es-ce-que cmd1 et cmd2???
0
dubcek Messages postés 18755 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 14 novembre 2024 5 620
15 mars 2014 à 15:06
n'importe quelles commandes ou programmes
elles s'exécutent séquentiellement, la 2ème dès que la 1ère a fini
0
Utilisateur anonyme
15 mars 2014 à 15:24
oui je sais mais le problème c'est que cmd1 ne se finit jamais car il arrête explorer puis il le redémarre sans lancer les jeux
0
dubcek Messages postés 18755 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 14 novembre 2024 5 620
16 mars 2014 à 12:42
et avec
@echo off
taskkill /F /IM explorer.exe
CD /d C:\Program Files (x86)\Cossacks\
dmcr.exe
start explorer.exe
0
Utilisateur anonyme
16 mars 2014 à 12:45
ba sa me kill explorer, me lance le jeux et quand le jeu ce lance, explorer se lance mais du coup ca fait tout planter...
0
dubcek Messages postés 18755 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 14 novembre 2024 5 620
16 mars 2014 à 13:01
et avec
start /wait  dmcr.exe
0
Naheulf Messages postés 287 Date d'inscription vendredi 13 août 2010 Statut Membre Dernière intervention 19 février 2024 113
29 mars 2014 à 15:40
Est-ce que tu veut forcement faire ton script en batch ou est-ce que ça peut être de l'autoit ?
0
Utilisateur anonyme
29 mars 2014 à 17:00
Non pas forcément du moment que ça fais son boulo et que sa s'exécute comme un exe
0
Salut,
As-tu skype ? si oui peut tu me passer ton psedo je crois avoir la solution (VB.Net)
a+ peut-etre
0
Utilisateur anonyme
1 avril 2014 à 23:19
Oui bien sur que j'ai skype ! ;) production.d.i.t.g. et l'image de compte c'est un livre ....

Voilà @++
0
Naheulf Messages postés 287 Date d'inscription vendredi 13 août 2010 Statut Membre Dernière intervention 19 février 2024 113
Modifié par Naheulf le 11/04/2014 à 14:31
Vu que l'on est sur le forum Autoit / Batch je propose une solution avec Autoit :
#cs ------------------------------------------------------------------------
AutoIt Version: 3.3.10.2
Author: Naheulf
Fonction du script:
Permet de lancer correctement "Cossacks - European Wars"
#ce ------------------------------------------------------------------------

While ProcessExists("explorer.exe")
ProcessClose ("explorer.exe" )
If @error Then
Exit @error
EndIf
Sleep(300);On attent un peut le temps que la liste des processus se mette à jour.
WEnd

RunWait("C:\Program Files (x86)\Cossacks\dmcr.exe","C:\Program Files (x86)\Cossacks\")

Do
Run("explorer.exe")
Until ProcessWait( "explorer.exe",60)

Le programme commence à partir du While.

Premier paragraphe : on arrêtes tous les processus "explorer.exe" si il y en a plusieurs de lancés. Et si il y a une erreur on quitte. (voir les codes d'erreurs dans l'aide d'Autoit.)

Deuxième Paragraphe : La commande RunWait va lancer le programme "C:\Program Files (x86)\Cossacks\dmcr.exe"depuis le dossier "C:\Program Files (x86)\Cossacks\" et attendre qu'il se termine avant de continuer le script.

Enfin jusqu'a ce que explorer soit lancé on le lance toutes les 60 secondes. On sais jamais si il ne veut pas se lancer ^^
0