Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
jbongran
Jacques (BE) wrote:
Bonjour
comment faire afficher une boite de message avec un bouton 'oui' et un bouton 'non' à partir d'un fichier .bat
Merci de vos réponses
Jacques
En appelant un fichier vbs qui retournera le code correspondant au bouton cliqué (0 pour oui, 1 pour non) Vite fait:
<-- msgbox.vbs --> Dim strReturn strReturn = MsgBox("Répondez à la question", 36, "Question...") 'Facultatif, permet de retourner 0 pour oui, 1 pour non strReturn = strReturn -6 WScript.Quit(strReturn) <-- msgbox.vbs -->
<-- msgbox.cmd --> call wscript.exe msgbox.vbs goto button%errorlevel% :button0 echo Bouton Oui goto end :button1 echo Bouton Non :end echo Fini ! <-- msgbox.cmd -->
Jacques (BE) wrote:
Bonjour
comment faire afficher une boite de message avec un bouton 'oui' et un
bouton 'non' à partir d'un fichier .bat
Merci de vos réponses
Jacques
En appelant un fichier vbs qui retournera le code correspondant au bouton
cliqué (0 pour oui, 1 pour non)
Vite fait:
<-- msgbox.vbs -->
Dim strReturn
strReturn = MsgBox("Répondez à la question", 36, "Question...")
'Facultatif, permet de retourner 0 pour oui, 1 pour non
strReturn = strReturn -6
WScript.Quit(strReturn)
<-- msgbox.vbs -->
<-- msgbox.cmd -->
call wscript.exe msgbox.vbs
goto button%errorlevel%
:button0
echo Bouton Oui
goto end
:button1
echo Bouton Non
:end
echo Fini !
<-- msgbox.cmd -->
comment faire afficher une boite de message avec un bouton 'oui' et un bouton 'non' à partir d'un fichier .bat
Merci de vos réponses
Jacques
En appelant un fichier vbs qui retournera le code correspondant au bouton cliqué (0 pour oui, 1 pour non) Vite fait:
<-- msgbox.vbs --> Dim strReturn strReturn = MsgBox("Répondez à la question", 36, "Question...") 'Facultatif, permet de retourner 0 pour oui, 1 pour non strReturn = strReturn -6 WScript.Quit(strReturn) <-- msgbox.vbs -->
<-- msgbox.cmd --> call wscript.exe msgbox.vbs goto button%errorlevel% :button0 echo Bouton Oui goto end :button1 echo Bouton Non :end echo Fini ! <-- msgbox.cmd -->
moi
Notre ami Jacques (BE) tapota :
Bonjour
comment faire afficher une boite de message avec un bouton 'oui' et un bouton 'non' à partir d'un fichier .bat
Si c'est pour récupérer le choix fait dans le *.bat en question il me
semble q'il faut rennocer... ce n'est pas fait pour ça. En revanche, Choice est encore vivant je pense ...
/C[:]touches Spécifie les touches configurables. Le défaut est ON /N Ne pas afficher les touches et le ? à l'invite. /S Permet de distinguer entre majuscules et minuscules. /T[:]c,nn Touche par défaut c après nn secondes texte Texte à afficher à l'invite
le choix est "récupéré" par ERRORLEVEL.
exemple idiot bien noter l'ordre des if ... C'est VITAL
----------------------------------------------------------- CHOICE /C:123 Choisissez entre %1 IF ERRORLEVEL ==3 GOTO CHOIX3 IF ERRORLEVEL ==2 GOTO CHOIX2 IF ERRORLEVEL ==1 GOTO CHOIX1 GOTO END
/C[:]touches Spécifie les touches configurables. Le défaut est ON
/N Ne pas afficher les touches et le ? à l'invite.
/S Permet de distinguer entre majuscules et minuscules.
/T[:]c,nn Touche par défaut c après nn secondes
texte Texte à afficher à l'invite
le choix est "récupéré" par ERRORLEVEL.
exemple idiot
bien noter l'ordre des if ...
C'est VITAL
-----------------------------------------------------------
CHOICE /C:123 Choisissez entre %1
IF ERRORLEVEL ==3 GOTO CHOIX3
IF ERRORLEVEL ==2 GOTO CHOIX2
IF ERRORLEVEL ==1 GOTO CHOIX1
GOTO END
/C[:]touches Spécifie les touches configurables. Le défaut est ON /N Ne pas afficher les touches et le ? à l'invite. /S Permet de distinguer entre majuscules et minuscules. /T[:]c,nn Touche par défaut c après nn secondes texte Texte à afficher à l'invite
le choix est "récupéré" par ERRORLEVEL.
exemple idiot bien noter l'ordre des if ... C'est VITAL
----------------------------------------------------------- CHOICE /C:123 Choisissez entre %1 IF ERRORLEVEL ==3 GOTO CHOIX3 IF ERRORLEVEL ==2 GOTO CHOIX2 IF ERRORLEVEL ==1 GOTO CHOIX1 GOTO END
Ci-dessous, une version purement (hum !) batch. Elle est un peu longue, mais c'est parce qu'elle est jolie.
Attention, les espaces comptent ; mieux vaut utiliser un copier-coller global, plutôt que de toute retaper. Autre chose : il faut enregistrer le batch sous le nom ouinon.bat dans le même répertoire où on va le lancer.
@-salutations -- Michel Claveau
@echo off :: :: Le batch doit s'appeler ouinon.bat :: setlocal type ouinon.bat| find " ">%TEMP%temp.txt type %TEMP%temp.txt| find /V "find">%TEMP%ouinon.hta set REPONSE=NON_DEFINI %TEMP%ouinon.hta call C:REPONSE.BAT del C:REPONSE.BAT echo REPONSE : %REPONSE% endlocal goto :EOF
<hta:application windowstate="normal" caption="no" singleinstance="yes" /> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <STYLE> BODY{FILTER:progid:DXImageTransform.Microsoft.Gradient(startColorstr=#223366,endColorstr=#8888AA,gradientType=1,enabled=true)} </STYLE> </head>
<SCRIPT language=JavaScript> function Finit(){ self.resizeTo(360,200); self.moveTo(110,10); window.name='Oui-Non'; window.title='Oui-Non'; }
function traiteclic(bouton){ var wfs=new ActiveXObject("Scripting.FileSystemObject"); fichier=wfs.CreateTextFile("c:REPONSE.BAT", 1) fichier.WriteLine("set REPONSE="+bouton); fichier.close(); window.close(); } </SCRIPT>
<FONT face=Arial color=#ffffaa size=3> Message : <br><br><b> Texte de la ligne un <br> Texte de la deuxième ligne.<br> <br><br><br></b> <blockquote><blockquote> <input ID="BTOUI" type="button" class="freebouton" VALUE=" Oui " onmousedown="traiteclic('OUI');" /> <input ID="BTNON" type="button" class="freebouton" VALUE=" Non " onmousedown="traiteclic('NON');" /><br> </blockquote></blockquote> <br> </body></html>
Bonsoir !
Ci-dessous, une version purement (hum !) batch.
Elle est un peu longue, mais c'est parce qu'elle est jolie.
Attention, les espaces comptent ; mieux vaut utiliser un copier-coller
global, plutôt que de toute retaper.
Autre chose : il faut enregistrer le batch sous le nom ouinon.bat dans le
même répertoire où on va le lancer.
@-salutations
--
Michel Claveau
@echo off
::
:: Le batch doit s'appeler ouinon.bat
::
setlocal
type ouinon.bat| find " ">%TEMP%temp.txt
type %TEMP%temp.txt| find /V "find">%TEMP%ouinon.hta
set REPONSE=NON_DEFINI
%TEMP%ouinon.hta
call C:REPONSE.BAT
del C:REPONSE.BAT
echo REPONSE : %REPONSE%
endlocal
goto :EOF
<hta:application
windowstate="normal"
caption="no"
singleinstance="yes"
/>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<STYLE>
BODY{FILTER:progid:DXImageTransform.Microsoft.Gradient(startColorstr=#223366,endColorstr=#8888AA,gradientType=1,enabled=true)}
</STYLE>
</head>
Ci-dessous, une version purement (hum !) batch. Elle est un peu longue, mais c'est parce qu'elle est jolie.
Attention, les espaces comptent ; mieux vaut utiliser un copier-coller global, plutôt que de toute retaper. Autre chose : il faut enregistrer le batch sous le nom ouinon.bat dans le même répertoire où on va le lancer.
@-salutations -- Michel Claveau
@echo off :: :: Le batch doit s'appeler ouinon.bat :: setlocal type ouinon.bat| find " ">%TEMP%temp.txt type %TEMP%temp.txt| find /V "find">%TEMP%ouinon.hta set REPONSE=NON_DEFINI %TEMP%ouinon.hta call C:REPONSE.BAT del C:REPONSE.BAT echo REPONSE : %REPONSE% endlocal goto :EOF
<hta:application windowstate="normal" caption="no" singleinstance="yes" /> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <STYLE> BODY{FILTER:progid:DXImageTransform.Microsoft.Gradient(startColorstr=#223366,endColorstr=#8888AA,gradientType=1,enabled=true)} </STYLE> </head>
<SCRIPT language=JavaScript> function Finit(){ self.resizeTo(360,200); self.moveTo(110,10); window.name='Oui-Non'; window.title='Oui-Non'; }
function traiteclic(bouton){ var wfs=new ActiveXObject("Scripting.FileSystemObject"); fichier=wfs.CreateTextFile("c:REPONSE.BAT", 1) fichier.WriteLine("set REPONSE="+bouton); fichier.close(); window.close(); } </SCRIPT>
<FONT face=Arial color=#ffffaa size=3> Message : <br><br><b> Texte de la ligne un <br> Texte de la deuxième ligne.<br> <br><br><br></b> <blockquote><blockquote> <input ID="BTOUI" type="button" class="freebouton" VALUE=" Oui " onmousedown="traiteclic('OUI');" /> <input ID="BTNON" type="button" class="freebouton" VALUE=" Non " onmousedown="traiteclic('NON');" /><br> </blockquote></blockquote> <br> </body></html>
Jacques \(BE\)
Bonjour
Effectivement c'est plus beau que la classique boite de message. Petits problèmes avec ton exemple : -le bouton Non ne s'affiche pas -je n'arrive pas à capter quel bouton a été appuyé (ici le bouton Oui) -le fichier C:REPONSE.BAT ne se crée pas ...
Jacques
"Méta-MCI" a écrit dans le message de news:%
Bonsoir !
Ci-dessous, une version purement (hum !) batch. Elle est un peu longue, mais c'est parce qu'elle est jolie.
Attention, les espaces comptent ; mieux vaut utiliser un copier-coller global, plutôt que de toute retaper. Autre chose : il faut enregistrer le batch sous le nom ouinon.bat dans le
même répertoire où on va le lancer.
@-salutations -- Michel Claveau
@echo off :: :: Le batch doit s'appeler ouinon.bat :: setlocal type ouinon.bat| find " ">%TEMP%temp.txt type %TEMP%temp.txt| find /V "find">%TEMP%ouinon.hta set REPONSE=NON_DEFINI %TEMP%ouinon.hta call C:REPONSE.BAT del C:REPONSE.BAT echo REPONSE : %REPONSE% endlocal goto :EOF
<hta:application windowstate="normal" caption="no" singleinstance="yes" /> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <STYLE>
<SCRIPT language=JavaScript> function Finit(){ self.resizeTo(360,200); self.moveTo(110,10); window.name='Oui-Non'; window.title='Oui-Non'; }
function traiteclic(bouton){ var wfs=new ActiveXObject("Scripting.FileSystemObject"); fichier=wfs.CreateTextFile("c:REPONSE.BAT", 1) fichier.WriteLine("set REPONSE="+bouton); fichier.close(); window.close(); } </SCRIPT>
<FONT face=Arial color=#ffffaa size=3> Message : <br><br><b> Texte de la ligne un <br> Texte de la deuxième ligne.<br> <br><br><br></b> <blockquote><blockquote> <input ID="BTOUI" type="button" class="freebouton" VALUE=" Oui " onmousedown="traiteclic('OUI');" /> <input ID="BTNON" type="button" class="freebouton" VALUE=" Non " onmousedown="traiteclic('NON');" /><br> </blockquote></blockquote> <br> </body></html>
Bonjour
Effectivement c'est plus beau que la classique boite de message.
Petits problèmes avec ton exemple :
-le bouton Non ne s'affiche pas
-je n'arrive pas à capter quel bouton a été appuyé (ici le bouton Oui)
-le fichier C:REPONSE.BAT ne se crée pas ...
Jacques
"Méta-MCI" <enleverlesX.XmcX@XmclaveauX.com> a écrit dans le message de
news:%23x1YPj6fHHA.4868@TK2MSFTNGP06.phx.gbl...
Bonsoir !
Ci-dessous, une version purement (hum !) batch.
Elle est un peu longue, mais c'est parce qu'elle est jolie.
Attention, les espaces comptent ; mieux vaut utiliser un copier-coller
global, plutôt que de toute retaper.
Autre chose : il faut enregistrer le batch sous le nom ouinon.bat dans
le
même répertoire où on va le lancer.
@-salutations
--
Michel Claveau
@echo off
::
:: Le batch doit s'appeler ouinon.bat
::
setlocal
type ouinon.bat| find " ">%TEMP%temp.txt
type %TEMP%temp.txt| find /V "find">%TEMP%ouinon.hta
set REPONSE=NON_DEFINI
%TEMP%ouinon.hta
call C:REPONSE.BAT
del C:REPONSE.BAT
echo REPONSE : %REPONSE%
endlocal
goto :EOF
<hta:application
windowstate="normal"
caption="no"
singleinstance="yes"
/>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<STYLE>
Effectivement c'est plus beau que la classique boite de message. Petits problèmes avec ton exemple : -le bouton Non ne s'affiche pas -je n'arrive pas à capter quel bouton a été appuyé (ici le bouton Oui) -le fichier C:REPONSE.BAT ne se crée pas ...
Jacques
"Méta-MCI" a écrit dans le message de news:%
Bonsoir !
Ci-dessous, une version purement (hum !) batch. Elle est un peu longue, mais c'est parce qu'elle est jolie.
Attention, les espaces comptent ; mieux vaut utiliser un copier-coller global, plutôt que de toute retaper. Autre chose : il faut enregistrer le batch sous le nom ouinon.bat dans le
même répertoire où on va le lancer.
@-salutations -- Michel Claveau
@echo off :: :: Le batch doit s'appeler ouinon.bat :: setlocal type ouinon.bat| find " ">%TEMP%temp.txt type %TEMP%temp.txt| find /V "find">%TEMP%ouinon.hta set REPONSE=NON_DEFINI %TEMP%ouinon.hta call C:REPONSE.BAT del C:REPONSE.BAT echo REPONSE : %REPONSE% endlocal goto :EOF
<hta:application windowstate="normal" caption="no" singleinstance="yes" /> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <STYLE>
<SCRIPT language=JavaScript> function Finit(){ self.resizeTo(360,200); self.moveTo(110,10); window.name='Oui-Non'; window.title='Oui-Non'; }
function traiteclic(bouton){ var wfs=new ActiveXObject("Scripting.FileSystemObject"); fichier=wfs.CreateTextFile("c:REPONSE.BAT", 1) fichier.WriteLine("set REPONSE="+bouton); fichier.close(); window.close(); } </SCRIPT>
<FONT face=Arial color=#ffffaa size=3> Message : <br><br><b> Texte de la ligne un <br> Texte de la deuxième ligne.<br> <br><br><br></b> <blockquote><blockquote> <input ID="BTOUI" type="button" class="freebouton" VALUE=" Oui " onmousedown="traiteclic('OUI');" /> <input ID="BTNON" type="button" class="freebouton" VALUE=" Non " onmousedown="traiteclic('NON');" /><br> </blockquote></blockquote> <br> </body></html>
Michel Claveau
Salut !
C'est certainement parce qu'il y a un problème de sécurité : plusieurs options sont configurées de manière à empêcher de travailler.
Je suppose que la zone "Poste de Travail" n'autorise pas les ActiveX, ce qui gêne l'utilisation de WSH. Il se peut aussi que les contenus actifs sont bloqués.
Perso, je pense que, en Intranet_local, et surtout en poste de travail, il n'y a pas de risques.
Pour le bouton "NON" pas affiché, il se peut que cela soit dû aux options d'affichage. Pour vérifier, il suffit de modifier le code HTML, pour élargir un peu la page affichée.
-- @-salutations
Michel Claveau
Salut !
C'est certainement parce qu'il y a un problème de sécurité : plusieurs
options sont configurées de manière à empêcher de travailler.
Je suppose que la zone "Poste de Travail" n'autorise pas les ActiveX,
ce qui gêne l'utilisation de WSH. Il se peut aussi que les contenus
actifs sont bloqués.
Perso, je pense que, en Intranet_local, et surtout en poste de travail,
il n'y a pas de risques.
Pour le bouton "NON" pas affiché, il se peut que cela soit dû aux
options d'affichage. Pour vérifier, il suffit de modifier le code HTML,
pour élargir un peu la page affichée.
C'est certainement parce qu'il y a un problème de sécurité : plusieurs options sont configurées de manière à empêcher de travailler.
Je suppose que la zone "Poste de Travail" n'autorise pas les ActiveX, ce qui gêne l'utilisation de WSH. Il se peut aussi que les contenus actifs sont bloqués.
Perso, je pense que, en Intranet_local, et surtout en poste de travail, il n'y a pas de risques.
Pour le bouton "NON" pas affiché, il se peut que cela soit dû aux options d'affichage. Pour vérifier, il suffit de modifier le code HTML, pour élargir un peu la page affichée.