Batch Index du Forum
S’enregistrerRechercherFAQMembresGroupesConnexion
Répondre au sujet Page 1 sur 1
[Resolu]un avis , svp, goto et call
Auteur Message
Répondre en citant
Message [Resolu]un avis , svp, goto et call 
bonsoir

pouvez vous me corriger, svp.

mon code :

j'ouvre une console dos et j'ai un choix de site à ouvrir, je donne la possibilité d'ouvrir une 2 ème console dos,
ou là , je peux lancer des logiciels
j'ai aussi prévu de revenir sur la 1ere console.

je pense avoir compris la commande goto avec les Labels et la commande call

donnez moi votre avis, épurer mon code, bien sûr si vous avez le temps.

pour les logiciels qui sont sur c:\ ( %programfiles% ) , l'exécutable suffit
pour les autres, j' ai été obligé de mettre le chemin complet en clair.
peut on mettre une variable d'environnement? si oui, comment, car je ne sais pas

je n'ai pas mis de ping localhost, faut il en mettre un, si oui, à quel endroit ?

j'ai vérifié chez moi , tous les liens ouvrent bien le bon site

et tous les exécutables lancent bien le logiciel souhaité

première console

Citation:


@echo off
title lanceur de page web
mode con cols=80 lines=24 | color 17
@echo. &echo.
rem accueillir l user
set /p pseudo=Peux tu indiquer ton peusdo et appuie sur enter//:
@echo.
echo bonjour %pseudo% et bonne journee.
@echo. &echo.

rem debut de l action
:debut
@echo.
rem choix des pages web a ouvrir
echo 1.batch-xoo.it 2.Pc Land
echo 3.bibou 4.Web tranquille
echo 5.SA 6.SX
echo 7.GraphandCo 8.Libellules
echo 9.Malekal 10.suivant
echo 11.quitter
@echo. &echo.
rem variable choix
set choix=
set /p choix=Indique le site en tapant le chiffre en face du site recherche :

echo. &echo.

rem en fonction du choix indiqué la page Web s ouvre
if /i "%choix%"=="1" goto batch
if /i "%choix%"=="2" goto Pc Land
if /i "%choix%"=="3" goto bibou
if /i "%choix%"=="4" goto W-T
if /i "%choix%"=="5" goto SA
if /i "%choix%"=="6" goto SX
if /i "%choix%"=="7" goto GraphandCo
if /i "%choix%"=="8" goto Libellules
if /i "%choix%"=="9" goto Malekal
if /i "%choix%"=="10" goto suivant
if /i "%choix%"=="11" goto quitter

if not defined "%choix%" goto erreur
:erreur
echo erreur de tabulation recommence stp
goto debut

rem quitter
:quitter
exit

rem le site batch
:batch
start http://batch.xoo.it/index.php
cls
exit
rem pc land
Razzc Land
start http://pcland.easyforum.fr/
cls
exit
rem Bibou
:bibou
start http://www.bibou0007.com/portal.htm
cls
exit
rem W-T
:W-T
start http://web-tranquille.fr/index.php
cls
exit
rem SA
:SA
start https://formation.securite-academie.fr/index.php
cls
exit
rem SX
:SX
start http://security-x.fr/forum/index.php
cls
exit
rem GraphandGo
:GraphandCo
start http://graphandco.bbactif.com/
cls
exit
rem libellules
:Libellules
start http://www.libellules.ch/phpBB2/
cls
exit
rem Malekal
:Malekal
start http://forum.malekal.com/
cls
exit
rem page suivante

:suivant
cls
call page-web-2.bat



deuxième console

Citation:

@echo off
title lanceur de page web
mode con cols=80 lines=24 | color 17
@echo. &echo.


rem debut de l action
:debut
@echo.
rem choix des pages web a ouvrir
echo 1.notepad++ 2.bloc notes
echo 3.excel 4.Word
echo 5.paint shop pro 6.powerpoint
echo 7.Mbam 8.ZHpdiag
echo 9.ZHPhelp 10.retour
echo 11.quitter
@echo. &echo.
rem variable choix
set choix=
set /p choix=Indique le numero du logiciel que tu veux lancer :

echo. &echo.

rem en fonction du choix indiqué la page Web s ouvre
if /i "%choix%"=="1" goto notepad++
if /i "%choix%"=="2" goto blocnotes
if /i "%choix%"=="3" goto excel
if /i "%choix%"=="4" goto Word
if /i "%choix%"=="5" goto paintshoppro
if /i "%choix%"=="6" goto pps
if /i "%choix%"=="7" goto mbam
if /i "%choix%"=="8" goto zhpdiag
if /i "%choix%"=="9" goto zhphelp
if /i "%choix%"=="10" goto retour
if /i "%choix%"=="11" goto quitter

if not defined "%choix%" goto erreur
:erreur

echo erreur de tabulation recommence stp
goto debut

rem quitter

:quitter
exit


rem note pad++
:notepad++
start L:\note-pad\Notepad++\notepad++.exe
cls
exit
rem bloc notes
:blocnotes
start notepad.exe
cls
exit
rem excel
:excel
start excel.exe
cls
exit
rem word
:word
start winword.exe
cls
exit
rem paint shop pro
:paintshoppro
start L:\paint-shop-pro-12\paintshoppro.exe
cls
exit

rem power point
:pps
start Powerpnt.exe
cls
exit

rem mbam
:mbam
start mbam.exe
cls
exit

rem zhpdiag
:zhpdiag
start L:\zhpdiag\ZHPDiag\ZHPDiag.exe
cls
exit

rem zhphelp
:zhphelp
start L:\zeb-help-process\ZebHelpProcess\ZHP2.exe
cls
exit

rem retour page precedente
:retour
call page-web.bat




votre avis m'interresse car si vous pensez que j'ai assimilé le goto , je vais me diriger vers la boucle for.


d'avance merci



Dernière édition par migau le Mer 15 Déc 2010 - 18:19; édité 8 fois

______________________________________________________
à plus

migau
Visiter le site web du posteur
Message Publicité 
PublicitéSupprimer les publicités ?


Répondre en citant
Message [Resolu]un avis , svp, goto et call 
Beaux codes tout les deux,

je te conseille plutôt les Call à la place des Goto.
Rajoute un Goto Mort de Rire après le texte du Label erreur qui renvoie au menu.
Sinon le menu est un peu trop conpacté, esseye de l'élargir.

Pourquoi pas rajouter un choix qui permet de Quitter
Sinon, oui tu peux rajouter de la temporisation après le texte d'erreur pour ralentir le processus.

Pourquoi ne pas esseyer un jour de faire une interface graphique avec AutoIt, se serait une belle évolution.



Répondre en citant
Message [Resolu]un avis , svp, goto et call 
Guerrion24 a écrit:
Beaux codes tout les deux,

je te conseille plutôt les Call à la place des Goto.
Rajoute un Goto Mort de Rire après le texte du Label erreur qui renvoie au menu.
Sinon le menu est un peu trop conpacté, esseye de l'élargir.

Pourquoi pas rajouter un choix qui permet de Quitter
Sinon, oui tu peux rajouter de la temporisation après le texte d'erreur pour ralentir le processus.

Pourquoi ne pas esseyer un jour de faire une interface graphique avec AutoIt, se serait une belle évolution.


hello

merci, pour le temps que tu m'accordes

* peux tu m'expliquer pour les call à la place de goto?

* j'ai ajouté un goto debut pour revenir au début après le goto erreur

ce goto debut existait bien sur la 2ème page pas sur la 1ere, (une erreur qui aurait dû être éviter)

* le menu est clair chez moi mais pas sur le forum
si tu édites mon message tu verras la mise en page.

* ok pour la tempo après le message d'erreur.

c'est bien de m'encourager pour Autoit, mais je suis au stade 0 en batch, lorsque je commencerai à toucher un peu, je ne dis pas non
je n'en suis pas là.

bonne soirée et merci




______________________________________________________
à plus

migau
Visiter le site web du posteur
Répondre en citant
Message [Resolu]un avis , svp, goto et call 
Bonjour Migau,
Code:

Pourquoi utilisez deux batchs alors que tu en utiliser un seul ?
Il suffit d'ajouter un menu et de fusionner le reste en modifiant le nom de certains labels utilisés en doublon.

Le goto est maitrisé tu as bien compris que ça redirigeait vers une action.

J'ai toujours utilisé @exit à la place de exit tout seul.


peut être ajouté une pause avant de renvoyer vers le début la personne aura peut etre pas le temps de lire le message.

Code:
:erreur
echo erreur de tabulation recommence stp
pause
goto debut



Pour les programmes :

certains sont dans le dossier Windows et sont utilisable même en retirant le start.
c'est le cas de notepad.exe

Code:
 notepad.exe




Les variables d'environnement correspondent à la partition principale ou disque dur principale contenu ton systeme d'exploitation

si on admet que L: est la lettre de ta partition principale contenant ton OS.

tu pourrais utiliser les variables d'environnement suivantes :

%systemdrive%
%homedrive%

tu ne peux pas utiliser une variable d'environnement si tes programmes sont sur un support amovible ou une autre partition de ton disque dur

Code:
start L:\note-pad\Notepad++\notepad++.exe


Par contre tu peux créer une variable pour simplifié l'accès.

Code:
set lecteur=L:
start "%lecteur%\note-pad\Notepad++\notepad++.exe
start "%lecteur%\zeb-help-process\ZebHelpProcess\ZHP2.exe"


tu peux compliquer ton code en créant un code permettant de chercher le nom de ta clé et lister son contenu pour y faire un menu.
Les possibilités peuvent être énorme.




______________________________________________________
Faites paraitre votre batch sur BatchClipboard
Visiter le site web du posteur
Répondre en citant
Message [Resolu]un avis , svp, goto et call 
Bonjour Laddy

Laddy a écrit:


Bonjour Migau,

Pourquoi utilisez deux batchs alors que tu en utiliser un seul ?
Il suffit d'ajouter un menu et de fusionner le reste en modifiant le nom de certains labels utilisés en doublon.



code modifié, mais si j'avais utilisé 2 batchs c'était pour me servir de :call


Laddy a écrit:


peut être ajouté une pause avant de renvoyer vers le début la personne aura peut etre pas le temps de lire le message.



j'ai tenu compte de tes conseils.

j'ai ajouté un @ping

et une tempo

serait il possible que le décompte se fasse sur la même ligne
echo patiente %COMP% secondes

et non pas que la ligne s'incrive 3 ou 4 fois

Citation:

set COMP=5
:debut_2
for /l %%A in ( 0, 1, %COMP% ) do (
echo patiente %COMP% secondes
set /a COMP=COMP - 1

timeout /t 1 /nobreak > nul
goto debut_2
)


edit migau:

j'ai trouvé, j'ai ajouté ceci

cls
@echo. &echo.


Laddy a écrit:


tu peux compliquer ton code en créant un code permettant de chercher le nom de ta clé et lister son contenu pour y faire un menu.
Les possibilités peuvent être énorme.


je pense qu'il faut utiliser la boucle "FOR" mais là c'est un peu plus compliqué pour moi.
je continue mes recherches


voilà mon code modifié


Citation:



@echo off
title lanceur de page web
mode con cols=80 lines=26 | color 17
@echo. &echo.




rem accueillir l user
set /p pseudo=Peux tu indiquer ton peusdo et appuie sur enter//:
@echo.

FOR /F "tokens=1-5 delims=: " %%I IN ('time /t') DO SET h=%%I


if /i %h% geq 00 if %h% LEQ 07 echo bonne nuit %pseudo%
if /i %h% geq 08 IF %h% LEQ 11 echo bonjour %pseudo%
if /i %h% geq 12 IF %h% LEQ 13 echo bon appetit %pseudo%
if /i %h% geq 14 IF %h% LEQ 19 echo bon apres midi %pseudo%
if /i %h% geq 20 IF %h% LEQ 23 echo bonne soiree %pseudo%

@echo. &echo.

rem 2 temporisations distinctes pour laisser le temps de lire

@ping localhost -n 3 >nul


set COMP=5
:debut_2
for /l %%A in ( 0, 1, %COMP% ) do (
cls
@echo. &echo.


echo patiente %COMP% secondes
set /a COMP=COMP - 1

timeout /t 1 /nobreak > nul
goto debut_2
)






rem debut de l action
cls
:debut


@echo.

echo liens vers mes sites favoris.
@echo.&echo.
rem choix des pages web a ouvrir
echo 1.batch-xoo.it 2.Pc Land
@echo.
echo 3.bibou 4.Web tranquille
@echo.
echo 5.SA 6.SX
@echo.
echo 7.GraphandCo 8.Libellules
@echo.
echo 9.Malekal 10.suivant
@echo.
echo 11.quitter
@echo. &echo.
rem variable choix
set choix=
set /p choix=Inscrire le numero du site recherche :
echo. &echo.

rem en fonction du choix indiqué la page Web s ouvre
if /i "%choix%"=="1" goto batch
if /i "%choix%"=="2" goto Pc Land
if /i "%choix%"=="3" goto bibou
if /i "%choix%"=="4" goto W-T
if /i "%choix%"=="5" goto SA
if /i "%choix%"=="6" goto SX
if /i "%choix%"=="7" goto GraphandCo
if /i "%choix%"=="8" goto Libellules
if /i "%choix%"=="9" goto Malekal
if /i "%choix%"=="10" goto suivant
if /i "%choix%"=="11" goto quitter

if not defined "%choix%" goto erreur
:erreur
echo erreur de tabulation recommence stp
echo. &echo.

goto debut

rem sortir de la console
:quitter
@exit


rem le site batch
:batch
start http://batch.xoo.it/index.php
cls
@exit
rem pc land
Razzc Land
start http://pcland.easyforum.fr/
cls
@exit
rem Bibou
:bibou
start http://www.bibou0007.com/portal.htm
cls
@exit
rem W-T
:W-T
start http://web-tranquille.fr/index.php
cls
@exit
rem SA
:SA
start https://formation.securite-academie.fr/index.php
cls
@exit
rem SX
:SX
start http://security-x.fr/forum/index.php
cls
@exit
rem GraphandGo
:GraphandCo
start http://graphandco.bbactif.com/
cls
@exit
rem libellules
:Libellules
start http://www.libellules.ch/phpBB2/
cls
@exit
rem Malekal
:Malekal
start http://forum.malekal.com/
cls
@exit
rem page suivante

:suivant
cls

rem debut de l action
:debuts

@echo. & echo.

rem choix de mes logiciels les plus usites
echo raccourci vers mes logiciels preferes
@echo. &echo.
echo 1.notepad++ 2.bloc notes
@echo.
echo 3.excel 4.Word
@echo.
echo 5.paint shop pro 6.powerpoint
@echo.
echo 7.Mbam 8.ZHpdiag
@echo.
echo 9.ZHPhelp 10.debut
@echo.
echo 11.quitter
@echo. &echo.
rem variable choix
set choix=
set /p choix=Inscrire le numero du logiciel que tu veux lancer :

rem creer une variable sur le lecteur
set Lecteur=L:

rem en fonction du choix indiqué la page Web s ouvre
if /i "%choix%"=="1" goto notepad++
if /i "%choix%"=="2" goto blocnotes
if /i "%choix%"=="3" goto excel
if /i "%choix%"=="4" goto Word
if /i "%choix%"=="5" goto paintshoppro
if /i "%choix%"=="6" goto pps
if /i "%choix%"=="7" goto mbam
if /i "%choix%"=="8" goto zhpdiag
if /i "%choix%"=="9" goto zhphelp
if /i "%choix%"=="10" goto debuter
if /i "%choix%"=="11" goto quitter
if not defined "%choix%" goto error
:error
@echo. &echo.
echo erreur de tabulation recommence stp :

rem suite a l erreur de tabulation retour au debuts
rem debuts avec un s car le label debut sans s existe deja
goto debuts

rem note pad++
:notepad++
start %lecteur%\note-pad\Notepad++\notepad++.exe
cls
@exit
rem bloc notes
:blocnotes
notepad.exe
cls
@exit
rem excell
:excel
start %lecteur%\office-xp\Office10\EXCEL.EXE
cls
@exit
rem word
:word
start %lecteur%\office-xp\Office10\winword.exe
cls
@exit
rem paint shop pro
:paintshoppro
start %lecteur%\paint-shop-pro-12\paintshoppro.exe
cls
exit

rem power point
:pps
start %lecteur%\office-xp\Office10\Powerpnt.exe
cls
@exit

rem mbam
:mbam
start mbam.exe
cls
@exit

rem zhpdiag
:zhpdiag
start %lecteur%\zhpdiag\ZHPDiag\ZHPDiag.exe
cls
@exit

rem zhphelp
:zhphelp
start %lecteur%\zeb-help-process\ZebHelpProcess\ZHP2.exe
cls
@exit

:debuter
cls
goto debut




bon dimanche




______________________________________________________
à plus

migau
Visiter le site web du posteur
Message [Resolu]un avis , svp, goto et call 


Montrer les messages depuis:
Répondre au sujet Page 1 sur 1
  



Index | créer un forum | Forum gratuit d’entraide | Annuaire des forums gratuits | Signaler une violation | Conditions générales d'utilisation
Copyright 2008 - 2016 // Batch