Batch simple mais qui ne marche pas
Fermé
lossius30
Messages postés
22
Date d'inscription
lundi 10 mai 2010
Statut
Membre
Dernière intervention
5 juin 2014
-
7 sept. 2010 à 22:26
lossius30 Messages postés 22 Date d'inscription lundi 10 mai 2010 Statut Membre Dernière intervention 5 juin 2014 - 9 sept. 2010 à 03:15
lossius30 Messages postés 22 Date d'inscription lundi 10 mai 2010 Statut Membre Dernière intervention 5 juin 2014 - 9 sept. 2010 à 03:15
A voir également:
- Batch simple mais qui ne marche pas
- Simple ocr - Télécharger - Bureautique
- Iphone 14 simple - Guide
- Simple file locker - Télécharger - Sécurité
- Fichier batch - Guide
- Iphone 13 simple - Guide
4 réponses
Utilisateur anonyme
7 sept. 2010 à 22:32
7 sept. 2010 à 22:32
Hello,
Chez moi ça fonctionne .. enfin dans le sens ou le fichier .bat ne se ferme pas tout seul ! ( Car je n'ai pas ffmpeg.exe )
Fait attention, dans le 2ème .bat, ceci:
Est "détaché" de la commande Echo précédente, cela génère une erreur.
Sinon la condition est bonne, qu'entends-tu par "ça ne marche pas" ?
++
Chez moi ça fonctionne .. enfin dans le sens ou le fichier .bat ne se ferme pas tout seul ! ( Car je n'ai pas ffmpeg.exe )
Fait attention, dans le 2ème .bat, ceci:
supprimez-le puis recommencez... & pause & exit
Est "détaché" de la commande Echo précédente, cela génère une erreur.
Sinon la condition est bonne, qu'entends-tu par "ça ne marche pas" ?
++
lossius30
Messages postés
22
Date d'inscription
lundi 10 mai 2010
Statut
Membre
Dernière intervention
5 juin 2014
7 sept. 2010 à 22:39
7 sept. 2010 à 22:39
En fait la ligne est coupée ici mais dans le fichier, tout est collé.
Et bien le probleme est que si je lance Compresser.bat sans faire de drag & drop d'un fichier, j'ai l'erreur "Glissez/Deposez votre fichier .AVI sur Compresser.bat"
Si le fichier out existe, j'ai l'erreur "Le fichier out.avi est present[...]"
Si je drag & drop un fichier avi, la fenetre se ferme.
Mais si je supprime la ligne "if "%1"=="" echo Glissez/Deposez votre fichier .AVI sur Compresser.bat & pause & exit" ca marche
Meme en changeant le message d'erreur, en mettant juste "Erreur" ca ne marche pas.
Et bien le probleme est que si je lance Compresser.bat sans faire de drag & drop d'un fichier, j'ai l'erreur "Glissez/Deposez votre fichier .AVI sur Compresser.bat"
Si le fichier out existe, j'ai l'erreur "Le fichier out.avi est present[...]"
Si je drag & drop un fichier avi, la fenetre se ferme.
Mais si je supprime la ligne "if "%1"=="" echo Glissez/Deposez votre fichier .AVI sur Compresser.bat & pause & exit" ca marche
Meme en changeant le message d'erreur, en mettant juste "Erreur" ca ne marche pas.
Utilisateur anonyme
7 sept. 2010 à 22:54
7 sept. 2010 à 22:54
Re,
ça c'est normal étant donné que %1 est égal à rien .
C'est normal aussi, vu que la condition " If exist %out% " est juste .
Par contre, si je glisse un fichier .Avi, le .bat arrive à terme, contrairement à chez toi .
il ne me semble pas que ce soit la condition qui soit fausse, mais plutôt ta ligne de commande envoyée à ffmpeg.exe .
Rééssaye en entourant de guillemets %in% car si le chemin d'accès possède un espace, ça peut ne pas marcher
Tu peux aussi essayer d'agencer un peu mieux le code, enchaîner les commandes avec " & " c'est un peu crade ^^ .
Echappe aussi les parenthèses, c'est interprété comme du code sinon.
Dit moi si ce code fonctionne:
Et bien le probleme est que si je lance Compresser.bat sans faire de drag & drop d'un fichier, j'ai l'erreur "Glissez/Deposez votre fichier .AVI sur Compresser.bat"
ça c'est normal étant donné que %1 est égal à rien .
Si le fichier out existe, j'ai l'erreur "Le fichier out.avi est present[...]"
C'est normal aussi, vu que la condition " If exist %out% " est juste .
Par contre, si je glisse un fichier .Avi, le .bat arrive à terme, contrairement à chez toi .
il ne me semble pas que ce soit la condition qui soit fausse, mais plutôt ta ligne de commande envoyée à ffmpeg.exe .
Rééssaye en entourant de guillemets %in% car si le chemin d'accès possède un espace, ça peut ne pas marcher
Tu peux aussi essayer d'agencer un peu mieux le code, enchaîner les commandes avec " & " c'est un peu crade ^^ .
Echappe aussi les parenthèses, c'est interprété comme du code sinon.
Dit moi si ce code fonctionne:
@echo off set dir=%~dp0 set exe="%dir%ffmpeg.exe" set out="%dir%out.avi" set in=%1 if exist %out% ( echo ERREUR : Le fichier out.avi est present ^(surement une video precedement compressee^), supprimez-le puis recommencez... pause exit ) if "%1"=="" ( echo Glissez/Deposez votre fichier .AVI sur Compresser.bat pause exit ) %exe% -i "%in%" -acodec libmp3lame -ar 44100 -ab 128k -ac 2 -vcodec copy -threads 2 -y %out% pause & exit
lossius30
Messages postés
22
Date d'inscription
lundi 10 mai 2010
Statut
Membre
Dernière intervention
5 juin 2014
7 sept. 2010 à 23:17
7 sept. 2010 à 23:17
La commande est bonne et est entourée de guillets, voici le résultat avec echo :
"C:\Documents and Settings\Lossius\Bureau\ffmpegTutoPad\ffmpeg.exe" -i "C:\Documents and Settings\Lossius\Bureau\ffmpegTutoPad\Tutoriel Comment créer un tutoriel vidéo.avi" -acodec libmp3lame -ar 44100 -ab 128k -ac 2 -vcodec copy -threads 2 -y "C:\Documents and Settings\Lossius\Bureau\ffmpegTutoPad\out.avi"
Si je la lance dans l'invité de commandes, ca marche parfaitement.
Je viens d'essayer le code que tu m'as donné, il se ferme toujours quand je fais mon drag & drop :(
Si je vire les guillemets au niveau de "%exe% -i %in%", et que j'enleve la condition :
if "%1"=="" (
echo Glissez/Deposez votre fichier .AVI sur Compresser.bat
pause
exit
)
Ca marche parfaitement
Je comprends pas du tout, ou est la logique lol?
"C:\Documents and Settings\Lossius\Bureau\ffmpegTutoPad\ffmpeg.exe" -i "C:\Documents and Settings\Lossius\Bureau\ffmpegTutoPad\Tutoriel Comment créer un tutoriel vidéo.avi" -acodec libmp3lame -ar 44100 -ab 128k -ac 2 -vcodec copy -threads 2 -y "C:\Documents and Settings\Lossius\Bureau\ffmpegTutoPad\out.avi"
Si je la lance dans l'invité de commandes, ca marche parfaitement.
Je viens d'essayer le code que tu m'as donné, il se ferme toujours quand je fais mon drag & drop :(
Si je vire les guillemets au niveau de "%exe% -i %in%", et que j'enleve la condition :
if "%1"=="" (
echo Glissez/Deposez votre fichier .AVI sur Compresser.bat
pause
exit
)
Ca marche parfaitement
Je comprends pas du tout, ou est la logique lol?
lossius30
Messages postés
22
Date d'inscription
lundi 10 mai 2010
Statut
Membre
Dernière intervention
5 juin 2014
9 sept. 2010 à 03:15
9 sept. 2010 à 03:15
Merci beaucoup ! je test ca des aujourdhui et je te tiens au courant, en tout cas merci pour cette réponse !