Welcome to Win3x.Org. You will find here what you need to reuse your old computer!  
Win3x.Org | Return to “Programmation”
CHOIX.BAT
Équivalent de SET/P

Description

A peine uploadé, sans même mettre à jour mon site web, je propose CHOIX.BAT, équivalent de set /p. Très utile pour les programmeurs, set /p m'a démoralisé lorsque j'ai remarqué qu'il n'était que sur Windows NT. Maintenant, il peut être sur DOS, Windows 9x, 3x, et plus ancien... Pour certains système qui n'ont pas encore CHOICE.COM ou CHOICE.EXE, il est dans l'archive (version FreeDOS). Je l'ai refait en dix minutes, étant donné que j'ai cherché pendant 1h des disquettes ou comment faire fonctionner mon lecteur CD-R (il est HS).

Capture d'écran

choix_01.gif

Téléchargement
[fr] CHOIX.BAT (6 KB) Hits : 290 [undetermined] [dos]
Win3x.Org is not just a website for downloading, it’s also a community!

If you have any trouble with a program, or if you want to react, feel free to post a reply by clicking HERE.

No registration is required and we encourage you to leave a message even if the discussion has been inactive for a long time.

CHOIX.BAT, équivalent de SET/P

Moderator: Nintenloup

Post Reply   Page 1 of 1  [ 7 posts ]
Author Message
michel
Post subject: Re: CHOIX.BAT, équivalent de SET/P
Posted: 26 February, 14:09
Administrateur
User avatar
Offline
 
Posts: 2845
Retro PC: IBM - PS2 Modèle 85 (carte mère en panne)
 
Le BBCode fonctionne correctement m'sieur :!:

Si c'est pour ton lien vers ton fichier, r'garde donc un peu...


Top
Quote
Matthias
Post subject: Re: CHOIX.BAT, équivalent de SET/P
Posted: 27 February, 00:35
Membre d'honneur
User avatar
Offline
 
Posts: 1381
Retro PC: Fujitsu Siemens Liteline
 
ça m'a l'air bien ^^

aller, je télécharge :mrgreen:

en plus, c'est compact:

CHOICE.COM = 24Ko
choix.bat = 5Ko :D


Top
Quote
Dr Frankenstein
Post subject: Re: CHOIX.BAT, équivalent de SET/P
Posted: 28 February, 23:34
Membre d'honneur
Offline
 
Posts: 394
 
Mais de quoi tu parles, toi ?

CHOIX.BAT remplace SET /P.
CHOIX.BAT nécessite CHOICE.COM pour fonctionner.

_________________

Introducing Windows 95.
It lets you use more than eight characters to name your files. Imagine that. ~Apple.


Top
Quote
wolf.clement
Post subject: Re: CHOIX.BAT, équivalent de SET/P
Posted: 04 March, 12:05
Membre inscrit
Offline
 
Posts: 38
 
Oui, mais CHOICE.COM est sur Windows 9x et en dessous, jusqu'à certains DOS. (FreeDOS y compris)
J'ai juste mis CHOICE.com pour ceux qui utilisent Vista ou XP.

Emplacements (choice.exe ou choice.com) :
Windows 9x et 3x : C:\Windows\COMMAND\ ou %windir\COMMAND\ (bref dans le path)
DOS : ça dépend, mais c'est dans le PATH.

Donc glissez ce fichier dans le PATH ou dans les chemins indiqués pour être sûr qu'il fonctionne.


Top
Quote
phil59110
Post subject: Re: CHOIX.BAT, équivalent de SET/P
Posted: 06 July, 19:44
Membre inscrit
User avatar
Offline
 
Posts: 551
Retro PC: HP Vectra 486DX4 100Mhz dos 6.22 Win3.11
 
bonjour!!
excuse moi d'intervenir mais qu'est ce que tu entend par ça remplace la
commande set/p de win nt ?
parce que set/p n'est pas accepté par les versions dos et win 9xxx
par contre je serais vraiment content si effectivement on pouvais ce servir de set/p sous dos ! mais je vois pas comment mettre en place ton fichier pour faire cette exploit!!

merci beaucoup!!

Last edited by Big Monstro on 02 October, 20:11, edited 1 time in total.
Suppression d'une longue citation...


Top
Quote
gm86
Post subject: Re: CHOIX.BAT, équivalent de SET/P
Posted: 30 January 2024 20:46
Membre inscrit
User avatar
Offline
 
Posts: 676
 
Avant l'existence de la commande CHOICE, certaines personnes utilisaient le code errorlevel d'un utilitaire fait par DEBUG afin de déterminer la touche frappée :
A>debug
-a
132E:0100 XOR AX,AX
132E:0102 INT 16
132E:0104 MOV AL,AH    'code errorlevel
132E:0106 MOV AH,4C
132E:0108 INT 21
132E:010A
-n TOUCHE.COM
-r cx
CX 0000
:a
-w
Écriture de 0000A octets
-q
L'information est tirée de ces deux pages Internet :
http://gowap.free.fr/Prog/Dos/Le_DOS.html
http://www.jsand.net/coursdos_compDebug.wju

Le tout ne fait que 10 octets.
Voyons ci-dessous son emploi bidon dans un fichier BATCH.
@echo off

:choix
echo Qui êtes-vous ?
ECHO   - Anne.
ECHO   - Bertrand.
ECHO   - Lucien.
ECHO   - Quelqu'un d'autre.
ECHO Frappez sans violence la première lettre de votre réponse (a/b/l/q).

:test_touche
TOUCHE.COM
ECHO.
REM si supérieur ou égale au scan code alors va à...
if errorlevel 49 goto test_touche
if errorlevel 48 goto bertrand

if errorlevel 39 goto test_touche
if errorlevel 38 goto lucien

if errorlevel 31 goto test_touche
if errorlevel 30 goto autre

if errorlevel 17 goto test_touche
if errorlevel 16 goto anne

GOTO test_touche
REM Attention à la liste des scan code dans QBASIC
REM Ils prennent en compte un clavier QWERTY (A & Q sont inversées par ex)


:anne
ECHO Salut, Anne.
GOTO suite

:bertrand
ECHO Bienvenue Bertrand.
GOTO suite

:Lucien
ECHO Tu ne travailles plus ici, Lucien.
ECHO Au revoir.
ECHO Appuyez sur une touche pour continuer...
TOUCHE.COM
CLS
REM retour au menu
GOTO choix

:autre
ECHO Que voulez-vous que je vous dise : ah, une nouvelle tête ?
REM Un GOTO au cas où rajout ultérieur.
GOTO suite


:suite
ECHO.
ECHO Il est un peu niais ce programme.
Travailler directement avec les scancodes est moins évident qu'avec les codes d'erreur de CHOICE mais pas si difficile.
Leur inconvénient est qu'ils dépendent du type de clavier : AZERTY, QWERTY, etc.
N.B. : il faut utiliser des nombres décroissant pour tester une valeur errorlevel.


Il est possible de créer le programme TOUCHE.COM s'il n'existe pas à partir du fichier BATCH. Vers le début du fichier de commandes, on vérifie sa présence et si nécessaire on le crée grâce à cette ligne :
echo 1[Alt+192][Alt+205][Alt+22][Alt+136][Alt+224][Alt+180][Alt+76][Alt+205][Alt+33]>touche.com
Ce qui donne à l'écran en code ANSI est différent sous DOS suivant la page de codes utilisée (850 ou 437 généralement en France) :
if exist TOUCHE.COM goto choix
echo 1+-^VêÓ¦L-!>touche.com
Vu que ECHO sert à afficher du texte, TOUCHE.COM incluera les deux caractères de retour à la ligne et sa taille passera à 12 octets. Vu que DOS terminera cet utilitaire avant d'avoir lu les deux octets en trop, cela restera sans conséquence.

_________________

C:\ONGRTLNS.W95


Top
Display: Sort by: Direction:
Post Reply   Page 1 of 1  [ 7 posts ]
Return to “Programmation”
Jump to: