[Resolu]Fermer un process recalcitrant

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Avatar du membre
xeno
Niveau 4
Niveau 4
Messages : 79
Enregistré le : sam. 23 mai 2009 02:43
Status : Hors ligne

[Resolu]Fermer un process recalcitrant

#1

Message par xeno »

Bonjour

Je visualise des flux vidéo de mes caméra avec VLC, je lance pour cela en ligne de commande

Code : Tout sélectionner

Local $cam1 = Run("C:\Program Files (x86)\VideoLAN\VLC\vlc.exe -I --no-embedded-video --video-title=Synocam rtsp://login:password@192.168.x.xxx:554/ucast/11")
WinWaitActive("Synocam" )
WinActivate("Synocam" , "" )
WinMove("Synocam", "", 3278, 398, 505, 406)
mais curieusement il n'est plus possible de fermer la fentre Vlc avec la croix, le problème ne viens pas d'autoit mais de Vlc, je suis obligé de tuer le processus dans le gestionnaire de tâche.

je pensais me simplifier la tâche avec un script autoit, mais j'ai le même problème.
un

Code : Tout sélectionner

ProcessClose ($cam1)
ne fonctionne pas mieux. winkill,winclose echec aussi..
j'ai tenter avec les droits

Code : Tout sélectionner

#RequireAdmin
mais ce n'est pas mieux

si vous avez une idée.

Merci
Modifié en dernier par xeno le mer. 17 mai 2017 19:03, modifié 1 fois.
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11773
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: Fermer un process recalcitrant

#2

Message par Tlem »

Bonjour.
Si le problème vient de VLC, avez vous essayé une autre version, et pourquoi carrément pas la version 64bits ?

Envoyé de mon SM-N9005 en utilisant Tapatalk


Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Avatar du membre
xeno
Niveau 4
Niveau 4
Messages : 79
Enregistré le : sam. 23 mai 2009 02:43
Status : Hors ligne

Re: Fermer un process recalcitrant

#3

Message par xeno »

C'est vrai que je n'ai pas pensé a essayé la version 64bits.
Je viens de l'installé et de faire l'essai avec la version 64bits, mais c'est strictement pareil :/
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11773
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: Fermer un process recalcitrant

#4

Message par Tlem »

Bonsoir.
ProcessClose est sensé fonctionner comme le gestionnaire de tâche.
Essayez peut-être de le mettre dans une boucle tant que le processus existe.


Envoyé de mon SM-N9005 en utilisant Tapatalk

Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: Fermer un process recalcitrant

#5

Message par mikell »

?
RunWait("TASKKILL /F /PID " & $iPID, @SystemDir & "\", @SW_HIDE)
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Avatar du membre
orax
Modérateur
Modérateur
Messages : 1479
Enregistré le : lun. 23 mars 2009 04:50
Localisation : ::1
Status : Hors ligne

Re: Fermer un process recalcitrant

#6

Message par orax »

ProcessClose renvoie-t-il une erreur ?

Code : Tout sélectionner

ProcessClose ($cam1)
ConsoleWrite(@error & " " & @extended & @CRLF)
De petits détails peuvent faire toute la différence. — Quand la boule de neige commence à rouler… poussez-la. (Columbo)
Avatar du membre
xeno
Niveau 4
Niveau 4
Messages : 79
Enregistré le : sam. 23 mai 2009 02:43
Status : Hors ligne

Re: Fermer un process recalcitrant

#7

Message par xeno »

Bon merci à tous.
a force d'essayer vos solutions, j'ai fini par trouver mon problème.

taskkill fonctionnant très bien a la main dans un terminal, j'ai fini par comprendre et vérifié que le PID n'étais pas transmi correctement,
en supprimant "Local" de

Code : Tout sélectionner

Local $cam1 = Run("C:\Program Files
donc devenant

Code : Tout sélectionner

$cam1 = Run("C:\Program Files
la commande

Code : Tout sélectionner

RunWait("TASKKILL /F /PID " & $cam1, @SystemDir & "\", @SW_HIDE)
s'est mis a fonctionner, j'ai même retenté avec ProcessClose et c'est bon.

il faut que je revois le fonctionnement des déclaration des variables :oops:
Répondre