Améliorer ce bout de code? [résolu] [BATCH] - Shell/Batch - Programmation
Marsh Posté le 27-04-2007 à 14:12:16
A quoi te sert ce script je ne le comprend pas
Marsh Posté le 27-04-2007 à 15:29:38
C'est pour éviter de crasher mon programme quand j'entre un choix.
Si je fais :
Code :
|
^ ca,ca crash mon programme quand on entre aucune valeur, ou un espace vide, ou d'autres caractère spéciaux. De plus ca met l'ancienne valeur au prochain choix à faire.
Code :
|
^ ca, ca résoud le problème des crash si aucune valeur n'est entrée ou seulement des espaces vides, et ca remet un choix vide pour la prochaine demande de choix. J'ai un callback :ERROR qui gère les erreur:
Code :
|
Mais ca résoud pas le problème des crashs avec des caractère comme " )" ">" "<" "|" etc etc, et le seul moyen que j'ai trouvé c'est de faire comme dans mon premier post. Je pense qu'il y a un moyen plus efficace en utilisant | (ou) mais franchement je trouve pas comment..mais bon c'est pas grave, c'est juste que j'aime avoir des codes nickel et efficaces.
Marsh Posté le 27-04-2007 à 15:33:32
A mon avi tu t'emerde pour rien, c'est pas grave si sa carche quand tu rentre un caractére special
Marsh Posté le 27-04-2007 à 21:23:25
webding a écrit : A mon avi tu t'emerde pour rien, c'est pas grave si sa carche quand tu rentre un caractére special |
Tain ca c'est de la réponse pertinente.
Marsh Posté le 28-04-2007 à 13:07:10
webding a écrit : Je donne mon avi c'est tout |
Ton avis on s'en fout un peu en fait, encore qu'il aurait pu être intéressant si tu avais eu un minimum de connaissances mais ce n'est pas le cas. Quand tu veux faire quelque chose utilisable par tout le monde il faut le perfectionner jusqu'a ce qu'il n'aie aucun problème.
En plus d'avoir fait deux posts inutiles, tu n'as pas répondu a la question d'armyman.
Marsh Posté le 28-04-2007 à 19:55:37
Allons allons ^^
J'ai fais autrement et ca marche maintenant, le seul caractère qui crash c'est " et je crois qu'on peut rien faire contre ca . Enfin bon c'est pas trop grave lol.
webding, j'aime le travail bien fait et aussi j'ai pas envie que les utilisateurs du prog se plaignent que ca crash
Marsh Posté le 28-04-2007 à 23:25:30
T'as essayé avec :
IF "%choice%" EQU "\"" ((SET choice=) & CALL :ERROR 1)
PS : Suggestion stupide mais bon
Marsh Posté le 29-04-2007 à 00:06:26
Hehe j'avais pas pensé au caractère d'echappement..bon, ca change rien, mais merci quand même
Marsh Posté le 17-11-2010 à 22:28:37
Essaie ce Code:
@echo OFF
set choice=""
:loopenter
SET /P choice=Entre un choix:
IF %choice% EQU 1 @echo Value 1 OK
IF %choice% EQU 2 @echo Value 2 OK
IF %choice%.=="". (
@echo. No Value Entered
goto loopenter
)
@echo. FIN
Marsh Posté le 27-04-2007 à 05:23:49
Bonjour, je cherche à améliorer ce bout de code car je répète toujours la même action et je suis sur qu'il y a un autre moyen, une sorte de "switch case" peut etre?
Message édité par armyman le 28-04-2007 à 22:27:58