FAQ VBS Factory
- 1 Question concernant Microsoft Script, Windows Scripting Host, Microsoft Visual Basic Script
- 2 Question concernant VbsFactory
- 2.1 Qu'est-ce que VBS Factory ?
- 2.2 Quels sont ses avantages ?
- 2.3 Que nécessite t-il ?
- 2.4 Que me permet l'encodage des fichiers VBS ?
- 2.5 Que me permet le débogueur de VBS Factory ?
- 2.6 Est-il prévu que VBS Factory puisse déboguer dynamiquement mes scripts ?
- 2.7 Ou puis-je trouver des exemples de scripts ?
Question concernant Microsoft Script, Windows Scripting Host, Microsoft Visual Basic Script
De quoi se compose Microsoft Script ?
Il se compose de deux éléments essentiels :
l'hôte de script, dans ce document celui-ci sera plus particulièrement WSH,
le moteur de script.
Qu'est ce que WSH ?
WSH est l'acronyme de Windows Script Host. Tout comme Internet Explorer, il est un hôte de script et permet l'exécution dans Windows de fichiers de commandes écrits en langages divers. Avant Windows Script Host, le seul langage de commandes disponible était celui proposé par MS-DOS et ses fameux Batchs (*.bat ou *.cmd sous Windows NT). Selon Microsoft, "L'hôte de script est un produit, application ou serveur, exposant certaines interfaces, lui permettant d'exécuter des scripts, dans un langage spécifique à un moteur de script. Cette application expose un modèle objet propre à son utilisation, contenant des objets dits "intrinsèques", directement utilisables dans le script.". Il existe d'autres hôtes que WSH, comme par exemple Internet Explorer cité plus haut ou bien Active Server Pages (ASP), plate-forme de développement d'applications Web proposée par Internet Information Server (IIS).
Qu'est ce qu'un moteur de script ?
"Un moteur de script définit un langage, avec sa syntaxe et ses fonctionnalités, utilisable par un hôte de script", nous répond Microsoft. Les moteurs installés par défaut sous Windows sont Visual Basic Script (VBS) et JScript, bien que d'autres moteurs tiers (par exemple Python) puissent être installés ultérieurement. VBS est un dérivé de Visual Basic Script for Applications (VBA, inclus par exemple dans Word ou Excel), lui-même dérivé du langage et produit de développement professionnel Microsoft Visual Basic. JScript est quand à lui l'implémentation Made in Microsoft de Javascript, langage de script défini par Netscape. VBS Factory, comme vous le devinez, ne permet que de développer des scripts avec VBS.
Que me permet VBS ?
La réponse de Microsoft est on ne peut plus claire : "Windows Scripting Host est une plate-forme d'exécution de scripts intégrée au système d'exploitation Windows, utilisée afin de réaliser automatiquement des opérations d'administration. Le modèle objet exposé par WSH permet d'effectuer des tâches d'administration courantes sous Windows (exploitation des variables d'environnement, gestion des ressources réseaux, création de raccourcis, manipulation de la base de registres)." Il s'agit donc d'une solution d'automatisation, comme le fut en leur temps les fichiers de commandes MS-DOS, à un niveau beaucoup plus développé. VBS interagit en effet en profondeur avec Windows et surtout supporte le système COM ce qui lui permet de "piloter" n'importe quelle ressource compatible ou "de tirer parti de librairies spécifiques afin d'effectuer des tâches complexes, comme des connexions à des bases de données (via ADO, Microsoft ActiveX Data Objects) ou des manipulations d'annuaires, comme Exchange, la SAM de Windows NT 4 ou l'Active Directory de Windows 2000 (via ADSI, Microsoft Active Directory Services Interfaces)."
Comment puis-je programmer des scripts VBS ?
Avant tout, vous devez maîtriser un tant soit peu le langage Visual Basic Script (voir liens en fin de page pour les sites traitant de l'apprentissage de ce langage). Celui-ci n'est guère compliqué et est relativement accessible pour tout développeur professionnel ou amateur. Vous écrirez vos scripts dans des fichiers texte avec l'extension VBS : pour cela vous pouvez par exemple utiliser le Bloc Note Windows (ou VBS Factory, bien sûr !). Un double clic sur leur icône déclenchera alors leur exécution dans Windows.
Puis-je choisir des modes d'exécutions différents ?
Oui : en mode console (à la manière d'un Batch) ou dans Windows, en mode "fenêtré". Ceci se fait grâce à 2 exécutables, respectivement cscript.exe et wscript.exe, qui sont installés avec WSH. Chaque script peut être configuré indépendamment pour être exécuté soit avec WSCRIPT, soit avec CSCRIPT, en affichant la fenêtre "Propriétés" disponible lors d'un clic droit sur l'icône d'un script. De plus, une règle générale d'exécution (signfiant "à partir de maintenant tous les scripts doivent être lancés avec WSCRIPT/CSCRIPT") peut être mise en place par l'envoi particuliers de paramètres à WSCRIPT ou CSCRIPT. VBS Factory gère de manière transparente le passage d'un interpréteur à un autre.
VBScript est-il différent de Visual Basic ?
Oui, bien que la syntaxe générale lui soit très proche. VBS est plus limité que Visual Basic, produit commercial permettant de distribuer des applications professionnelles compilés. Sans faire une liste détaillée, citons certaines différences :
Impossibilité de créer des interfaces graphiques (ou alors en passant laborieusement par Internet Explorer, ce qui est loin d'être pratique et intuitif !),
Variables non typées,
Impossibilité d'utiliser les API Windows,
Code non compilé, donc lisible par tous (Cependant Microsoft propose Visual Basic Script Encoder pour palier à ce problème - il ne s'agit pas de compilation, mais d'encodage), etc.
Question concernant VbsFactory
Qu'est-ce que VBS Factory ?
VBS Factory est un environnement de développement basique pour fichiers VBS. Il vous permet de mettre au point facilement des scripts Visual Basic.
Quels sont ses avantages ?
Reconnaissance syntaxique du code,
Affichage sous forme arborescente de la structure du fichier (fonctions, subs, classes)
Débogueur,
Console virtuelle VBS,
Insertions de GUID aléatoires,
Nombreux modes de test...
Encodage des sources VBS grâce à Microsoft Script Encoder (.VBS vers .VBE),
etc...
Que nécessite t-il ?
Il nécessite la présence des run-time WSH (Windows Scripting Host) sur votre ordinateur. Si vous exécutez déjà des scripts VBS sur votre PC, c'est que vous les possèdez déjà, sinon, vous pouvez les télécharger sur le site de Microsoft. Je vous conseille vivement de de mettre à jour votre version de Windows Scripting Host et de télécharger la dernière version de ces modules sur le site de Microsoft. Elle inclue de nombreux outils et ajoute de nouvelles fonctionnalités par rapport à la dernière version.
Que me permet l'encodage des fichiers VBS ?
Encoder vos scripts avec Microsoft Script Encoder préserve la confidentialité de vos sources puisqu'elles deviennent illisibles à l'utilisateur voulant les consulter, le script restant toujours exécutable dans Windows. Les fichiers VBS encodés prennent l'extension ".VBE". ATTENTION : Le support des scripts VBE encodés n'est apporté qu'avec la dernière version de Windows Scripting Host. Si vous n'arrivez pas à exécuter des fichiers ".vbe", c'est donc que la version des intérpréteurs n'est pas assez récente, téléchargez la dernière mouture sur le site de Microsoft en suivant le lien du post "Que nécessite t-il?".
Que me permet le débogueur de VBS Factory ?
Le débogueur permet de mettre au point vos programmes dans l'interface de VBS Factory en surlignant dynamiquement les endroits de votre code contenant des erreurs. Il indique le numéro de ligne, le type de l'erreur ainsi que le mot clé l'ayant engendré. Attention : Le débogueur ne peut tester des scripts se référant à l'objet WSCRIPT (lui-même), car celui-ci pointe normalement vers le fichier en cours d'exécution. Or le débogueur teste votre script en mémoire et non dans un fichier placé sur un disque - les appels à cet objet seront donc source d'erreurs. Testez dans ce cas là votre script directement dans Windows à l'aide des commandes "Test du fichier enregistré" ou "Test du fichier courant".
Est-il prévu que VBS Factory puisse déboguer dynamiquement mes scripts ?
Cette fonctionnalité n'est pas prévue pour l'instant.
Ou puis-je trouver des exemples de scripts ?
Quelques liens pour vous aider :
[jc.bellamy.free.fr] Section "Technique", "VBS". De nombreux exemples, de niveaux divers. Jean Claude Bellamy est certifié MVP par Microsoft.
[www.interclasse.com] Des scripts complets et surprenants. Vous n'imaginiez pas qu'un VBS puisse réaliser le rôle de serveur Web ? Et bien si, on vous explique comment...
[msdn.microsoft.com] Trop souvent mésestimé, MSDN rassemble des informations capitales et de très bon exemple de scripts VBS. La réponse à votre question se trouve forcément ici !
![[top]](/images/gotop.png)