FAQ VBScriptConsultez toutes les FAQ
Nombre d'auteurs : 16, nombre de questions : 108, dernière mise à jour : 2 mars 2019 Ajouter une question
Cette FAQ VB Script est le fruit de la collaboration de l'équipe de rédaction et des membres du forum VB.
Aidez-nous à faire vivre cette FAQ en participant au forum Vos contributions VBScript.
Pour toutes questions ou tous problèmes concernant cette FAQ, vous pouvez contacter par MP ThierryAIM ou bbil.
L'équipe de rédaction de Developpez.com vous remercie pour votre participation passée et à venir.
- Comment exécuter un programme externe ?
- Comment lister les dossiers spéciaux de Windows ?
- Comment écrire dans le journal d'évènements de Windows ?
- Comment simuler l'envoi de caractères vers une application externe ?
- Comment créer un raccourci vers un site internet où un programme sur le bureau de windows
La méthode Run de l'objet WshShell permet cela :
Exécution "bloquante" de la calculatrice Windows.
Code vb : | Sélectionner tout |
1 2 3 | Set WshShell = WScript.CreateObject("WScript.Shell") Return = WshShell.Run("calc" , 1, true) MsgBox "Fin utilisation calculatrice" |
Paramètres de WshShell.Run strCommand,intWindowStyle,bWaitOnReturn :
- strCommand : Chaîne de caractères, ligne de commande à exécuter ;
- intWindowStyle : à 1 : Active la fenêtre dans sa taille et position d'origine ;
- bWaitOnReturn : à True, attend la fin de l'exécution du programme avant d'effectuer la suite.
avec intWindowStyle :
- 0 Masque la fenêtre et en active une autre.
- 1 Active et affiche une fenêtre. Si la fenêtre est réduite ou agrandie, le système lui redonne sa taille et sa position d'origine. Une application doit spécifier cette indication lors du premier affichage de la fenêtre.
- 2 Active la fenêtre et l'affiche en taille réduite.
- 3 Active la fenêtre et l'affiche en taille agrandie.
- 4 Affiche une fenêtre en respectant sa taille et sa position les plus récentes. La fenêtre active reste active.
- 5 Active la fenêtre et l'affiche d'après sa taille et sa position actuelle.
- 6 Réduit la fenêtre spécifiée et active la fenêtre de niveau supérieur suivante dans l'ordre alphabétique.
- 7 Affiche la fenêtre sous l'aspect d'une fenêtre réduite. La fenêtre active reste active.
- 8 Affiche la fenêtre dans son état actuel. La fenêtre active reste active.
- 9 Active et affiche la fenêtre. Si la fenêtre est réduite ou agrandie, le système lui redonne sa taille et sa position d'origine. Une application doit spécifier cet indicateur lors de la restauration d'une fenêtre réduite.
- 10 Définit l'état d'affichage en fonction de l'état du programme qui a démarré l'application.
La propriété SpecialFolders de l'objet WshShell permet d'obtenir les références aux dossiers spéciaux de Windows (Bureau, Favoris,etc.).
Liste des dossiers spéciaux de Windows disponibles :
- AllUsersDesktop
- AllUsersStartMenu
- AllUsersPrograms
- AllUsersStartup
- Desktop
- Favorites
- Fonts
- MyDocuments
- NetHood
- PrintHood
- Programs
- Recent
- SendTo
- StartMenu
- Startup
- Templates
Code vb : | Sélectionner tout |
1 2 3 4 5 | Set WshShell = WScript.CreateObject("WScript.Shell") For i = 0 to WshShell.SpecialFolders.Count -1 sf = sf & WshShell.SpecialFolders(i) & vbCr Next MsgBox sf,,"Répertoires spéciaux de Windows" |
Accéder à un dossier particulier, dont on connaît le nom (le Bureau, dans l'exemple ci-dessous) :
Code vb : | Sélectionner tout |
1 2 | Set WshShell = WScript.CreateObject("WScript.Shell") MsgBox WshShell.SpecialFolders("Desktop") |
Code vb : | Sélectionner tout |
1 2 | Set WshShell = WScript.CreateObject("WScript.Shell") WshShell.LogEvent 0, "Execution du script" |
La méthode SendKeys de l'objet WScript permet d'envoyer une ou plusieurs entrées clavier à la fenêtre active.
Pour spécifier les touches d'actions (qui ne sont pas des caractères), voir le tableau ci-dessous :
Touche | Code |
RETOUR ARRIERE | {BACKSPACE}, {BS}, ou {BKSP} |
VERR. MAJ | {CAPSLOCK} |
VERR. NUM | {NUMLOCK} |
ARRET DEFIL | {SCROLLLOCK} |
IMPR. ECRAN | {PRTSC} (Ne peut être envoyé à une application externe) |
FLÈCHE VERS LE BAS, LE HAUT, A GAUCHE, A DROITE | {DOWN}, {UP}, {LEFT}, {RIGHT} |
PAGE SUIVANTE, PRECEDENTE | {PGDN}, {PGUP} |
ENTREE | {ENTER} ou ~ |
ORIGINE | {HOME} |
FIN | {END} |
ECHAP | {ESC} |
INSERT | {INSERT} ou {INS} |
SUPPR | {DELETE} ou {DEL} |
TAB | {TAB} |
F1 à F16 | {F1} ... {F16} |
- Maj : +
- Ctrl : ^
- Alt : %
Elles s'utilisent en combinaison avec les touches à émettre :
- "+ab" envoie Ab
- "+(ab)" envoie AB
- "{+a 5}" envoie AAAAA
Exemple d'utilisation
Ouvrir la calculatrice et effectuer une opération :
Code vb : | Sélectionner tout |
1 2 3 4 5 6 7 8 9 | Set WshShell = WScript.CreateObject("WScript.Shell") WshShell.Run "calc" '-- Ouvre la calculatrice de Windows WScript.Sleep 200 WshShell.AppActivate "Calculatrice" '-- Active l'application WScript.Sleep 200 WshShell.SendKeys "4*2" WScript.Sleep 100 WshShell.SendKeys "{Enter}" |
Code vb : | Sélectionner tout |
1 2 3 4 5 6 7 8 | Dim Shell, DesktopPath, URL Set Shell = CreateObject("WScript.Shell") DesktopPath = Shell.SpecialFolders("Desktop") Set URL = Shell.CreateShortcut(DesktopPath & "\MonForumPreferé.URL") URL.TargetPath = "http://www.developpez.net/forums" URL.WorkingDirectory = "c:\tmp" URL.Save |
On garde le même principe pour un programme :
Code vb : | Sélectionner tout |
1 2 3 4 5 6 7 8 9 10 | Dim Shell, DesktopPath, URL Set Shell = CreateObject("WScript.Shell") DesktopPath = Shell.SpecialFolders("Desktop") Set URL = Shell.CreateShortcut(DesktopPath & "\monraccourci.lnk") URL.IconLocation = "monicone.ico" URL.TargetPath = "chemin\monexe.exe" URL.WorkingDirectory = "c:\tmp" URL.Arguments = "-para monparametre" URL.Save SET oFS = nothing |
Proposer une nouvelle réponse sur la FAQ
Ce n'est pas l'endroit pour poser des questions, allez plutôt sur le forum de la rubrique pour çaLes sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2024 Developpez Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.