VBScript

VBScript

Description de l'image HP Quick Test Professional VBScript Code.png.
Informations
Développé par Microsoft
Première version Voir et modifier les données sur Wikidata
Dernière version 5.8 ()Voir et modifier les données sur Wikidata
Environnement Windows
Type Langage de script
Politique de distribution incorporé dans Windows
Site web docs.microsoft.com/en-us/previous-versions/t0aew7h6(v=vs.85)Voir et modifier les données sur Wikidata

VBScript (diminutif de Microsoft Visual Basic Scripting Edition, créé par Microsoft) est un sous-ensemble de Visual Basic utilisé en tant que langage de script d'usage général. Il est souvent comparé au JScript.

Le , Microsoft a annoncé que VBScript est devenu obsolète et sera retiré des futures versions de Windows[1].

Environnements d'utilisation[modifier | modifier le code]

VBScript peut fonctionner sous de nombreux environnements, notamment :

  • Windows Scripting Host (WSH) : il s'agit d'un interpréteur de scripts pour les systèmes Microsoft Windows, permettant d'écrire des scripts afin, par exemple, de faciliter leur administration.
  • Windows Internet Explorer : le langage VBScript peut être intégré dans les pages HTML, au même titre que le Javascript afin d'offrir des fonctionnalités interactives.
  • Microsoft Internet Information Services (IIS) : il s'agit du serveur web de Microsoft. VBScript est le langage privilégié pour la programmation de pages Active Server Pages (ASP), c'est-à-dire l'écriture de pages web dynamiques gérées du côté serveur.

Le VBScript est souvent utilisé en remplacement des fichiers batch DOS.

Il ne fonctionne pas sur les versions Explorer pour Mac OS.

Langage interprété[modifier | modifier le code]

Comme tout langage de script, VBScript est un langage interprété. Il ne nécessite pas de compilation avant d'être exécuté. En revanche, il nécessite que la machine destinée à les exécuter possède un interpréteur, un programme capable de comprendre l'ensemble des instructions présentes dans le programme. Selon l'utilisation les différents "interpréteurs" sont :

  • ASP (asp.dll) dans un environnement Web
  • wscript.exe dans un environnement Windows
  • cscript.exe dans un environnement à ligne de commande
  • mshta.exe pour les applications HTML.

Les fichiers VBScript pour Windows Scripting Host ont généralement l'extension de fichier .vbs.

D'autres extensions existent et permettent l'exécution de VBScript tels que :

  • VBE : VBScript codé (non éditable).
  • WSF : pouvant contenir différents langages en même temps (par exemple VBScript et JScript), des balises XML indiquent le langage de chaque source.
  • WSC : fichier source Windows Script Components.


Programme exemple (à mettre dans un fichier 'bonjour.vbs') :

 MsgBox "Bonjour le monde !" 

Deuxième programme exemple, celui-ci va enchainer deux boites de message :

 Msgbox "Bonjour monsieur !"  Msgbox "Comment allez vous ?" 

Si Windows Scripting Host est correctement installé et activé, le programme s'exécutera au double-clic sur son icône.

La version de VBScript implémentée dans Internet Explorer contient des fonctions très similaires à celles du JavaScript ; il a un interpréteur qui traite le code intégré au HTML, et ne peut créer d'applications indépendantes. Il n'a pratiquement aucune compatibilité avec les autres navigateurs, ainsi la quasi-totalité des webmestres délaissent actuellement le VBScript au profit de JavaScript. Il ne fonctionne par exemple avec aucun des navigateurs proposés sur Mac.

VBScript est aussi implémenté dans Microsoft Outlook comme un langage de script utilisé pour répondre aux événements des formulaires Outlook.

Quelques exemples communs d'applications du VBScript sont la technologie Microsoft Agent et le service Windows Update. Comme ces deux exemples utilisent également la technologie ActiveX, il est obligatoire d'utiliser Internet Explorer pour voir les pages Web utilisant le VBScript.

Langage de script Internet[modifier | modifier le code]

VBScript est un langage propre à Microsoft et n'est interprété que par Internet Explorer. De ce fait ce langage n'a pas la portabilité de JavaScript par exemple. VBScript a été implémenté pour la première fois dans Internet Explorer dans la version 3 du navigateur, mais l'absence d'interopérabilité avec Netscape/Mozilla/Opera implique que, quand cela est possible, JavaScript lui soit préféré. Il est abandonné dans IE11 et dans Edge, le nouveau navigateur de Microsoft[2].

Mots-clés[modifier | modifier le code]

  • dim (déclare une variable)
  • if (si)
  • then (alors)
  • elseif (sinonsi)
  • else (sinon)
  • end if (fin de la condition)
  • while...wend (boucle : faire jusqu'à ce que...)
  • for...next (boucle : faire jusqu'à ce que...)
  • do...loop (boucle contrôlée par un while ou un until en début ou en fin)

Il est à noter qu'il n'existe pas de goto

Opérateurs[modifier | modifier le code]

  • mod (reste de la division entière)
  • \ (division entière)
  • & ou + (concatène des chaînes)

Fonctions[modifier | modifier le code]

  • inputbox (boîte de saisie)
  • X=inputbox (boîte de saisie améliorée)
  • msgbox (boîte de message)
  • X=msgbox (boîte de message améliorée)
  • cint (convertit un variant en entier)
  • copyfile (copie un fichier)
  • deletefile (supprime un fichier)
  • fileexists (recherche si un fichier existe)

Utilisation des fonctions[modifier | modifier le code]

  • inputbox (boîte de saisie)

inputbox permet d'apparaitre une boîte de saisie ou l'utilisateur peut taper tout ce qu'il veut dedans

Exemple de code :

InputBox ("Entre ton prenom") 
  • X=inputbox (boîte de saisie améliorée)

X=inputbox est la même chose que InputBox mais on peut ajouter un titre à la boîte de saisie et des caractères déjà mit dans la saisie pour exprimer une recommandation

Exemple de code pour ajouter un titre :

X=InputBox ("Entre ton prenom", "Bonjour") 

Exemple de code pour ajouter un titre et des caractères déjà mit dans la saisie :

X=InputBox ("Entre ton prenom", "Bonjour", "Prenom") 

Syntaxe[modifier | modifier le code]

La création d'un script VBScript, dans un environnement Windows standard, ne nécessite pas l'installation de logiciel particulier :

  1. Lancer un éditeur de texte (type Notepad / Bloc-Note)
  2. Copier les instructions du script (ci-dessous)
  3. Sauvegarder le fichier avec une extension '.vbs'.
  4. Ouvrir le fichier pour exécuter le script

Par exemple un petit script pour donner l'heure :

 Heure = "Il est " & Hour(Now) & "h et " & Minute(Now) & " min."  if Hour(Now) <= 18 then     Message = "Bonjour"  else     Message = "Bonsoir"  end if  MsgBox Message & "!" & vbnewline & Heure 

Un autre VBscript qui donne l'heure, et utilise InputBox :

 prenom = InputBox(prenom, "Quel est votre prénom ?")  Heure = "Il est " & Hour(Now) & "h " & Minute(Now) & "min et " & Second(Now) & "sec."  if Hour(Now) <= 18 then     Message = "Bonjour"  else     Message = "Bonsoir"  end if  if Hour(Now) <= 18 then     Message2 = "Passez une bonne journée !"  else     Message2 = "Passez une bonne soirée !"  end if  MsgBox Message & " " & prenom & " !" & vbnewline & Heure & vbnewline & Message2 

Langage et objet[modifier | modifier le code]

VBScript permet de manipuler les objets de Windows. Il permet également de créer des classes dans lesquelles les membres peuvent être soit privés, soit publics. L'héritage n'existe cependant pas en VBScript.

Virus informatiques et VBScript[modifier | modifier le code]

Permettant de réaliser pratiquement n'importe quelle opération sous un système Windows en utilisant la technologie ActiveX et Killbit, le VBscript a été utilisé pour la création de nombreux virus informatiques.

De nombreux virus écrits en VBscript apparaissent en l'an 2000. L'un des plus connus est le virus « VBS.LoveLetter » aussi connu sous le nom de « I love you ».

Éditeurs[modifier | modifier le code]

De simples éditeurs de texte comme Notepad suffisent pour développer en VBScript.

Néanmoins, il existe de nombreux éditeurs dédiés au VBScript comme :

Des outils permettent d'utiliser le scripting sans connaissance du développement

Notes et références[modifier | modifier le code]

Annexes[modifier | modifier le code]

Sur les autres projets Wikimedia :

Articles connexes[modifier | modifier le code]

Liens externes[modifier | modifier le code]