Pour les joueurs : voici un petit cas d’école VBScript.
Qui peut me dire ce que l’on peut voir sur la sortie standard quand on exécute le code VBS suivant :
on error resume next
dim varBoolean
dim varArray
varBoolean = false
wscript.echo “test A”
if varBoolean and 1=1 then
wscript.echo “test B”
elseif varBoolean and ubound(varArray) then
wscript.echo “test C”
end if
wscript.echo “test D”
La réponse en lisant la suite
La réponse : c’est donc :
test A
test C
test D
En effet, contrairement à ce qu’on pourrait imaginer vu que varBoolean est toujours FALSE.
Le tableau varArray n’étant pas initialisé, uBound(varArray) retourne une erreur qui comme le stipule l’instruction ON ERROR RESUME NEXT place le pointeur d’exécution sur la prochaine instruction à savoir le echo “script C” sans tenir compte du bloc correspondant au if.
Bref j’ai passé 1 heure sur ce cas de figure et j’avoue être bluffé par les conséquences qu’il peut engendrer.


0 Réponses vers “VBScript = language.simple RETURN false”