Table des matières:

Introduction à VB Script : un guide pour débutants : 11 étapes
Introduction à VB Script : un guide pour débutants : 11 étapes

Vidéo: Introduction à VB Script : un guide pour débutants : 11 étapes

Vidéo: Introduction à VB Script : un guide pour débutants : 11 étapes
Vidéo: DÉBUTER EN PROGRAMMATION [PARTIE 1 : BINAIRE] 2024, Novembre
Anonim
Introduction au script VB: un guide du débutant
Introduction au script VB: un guide du débutant

***((((ALERTE: Bien qu'il y ait beaucoup d'étapes. C'est en fait assez facile. J'explique tout en détail pour les débutants. Si vous voulez juste que le code passe à la dernière étape et vous trouverez le code là-bas.))))***Je joue beaucoup sur Xbox live et je dois toujours désactiver Internet sur mon ordinateur car il monopolise la bande passante. Principalement parce que je télécharge ou télécharge des choses tout le temps. Le problème n'est pas de l'éteindre mais c'est de le rallumer que j'oublie, ce qui me rend là où je perds tout ce temps de téléchargement. J'ai donc décidé de créer un programme pour le faire pour moi. J'allais l'écrire dans Vb.net, mais j'ai récemment dû détruire et ouvrir mon système d'exploitation sur mon ordinateur à cause d'une mauvaise tempête qui a fait frire mon disque dur, et je n'ai pas encore réinstallé VB.net, alors j'ai juste pensé que ce serait donnez-moi une raison de jouer avec vbscript. J'ai également créé une image en peinture à afficher en arrière-plan afin que je sache qu'elle était en cours d'exécution.

Étape 1: Déterminez ce que vous voulez faire

Déterminez ce que vous voulez faire
Déterminez ce que vous voulez faire

La première chose que je fais toujours est de faire un plan. Qu'est-ce que je veux que le programme fasse ? A) Je veux pouvoir ouvrir le script et il coupera automatiquement la connexion. B) Je veux qu'il affiche un écran géant en arrière-plan pour qu'il n'y ait pas d'erreur sur le fait qu'Internet est éteint, de cette façon, je n'oublie pas de le rallumer. C) Je veux qu'il me donne le choix de le rallumer rallumez-le, puis attendez une réponse. D) Je veux m'assurer que je le rallume pour ne pas l'oublier. E) Ensuite, une fois que je dis oui pour le rallumer, le script le rallume puis ferme l'arrière-plan. F) Quittez tout.

Étape 2: choses que j'utilise mais pas vraiment nécessaires

Choses que j'utilise mais pas vraiment nécessaires
Choses que j'utilise mais pas vraiment nécessaires

Tout ce dont vous avez vraiment besoin est un éditeur de texte comme le bloc-notes. Tout le reste est facultatif. J'utilise Notepad ++ lorsque je fais un script VB, car il le traite comme le fait vb.net avec les couleurs et connaît la langue. Cela permet d'éviter les erreurs. Il numérote également les lignes afin que vous puissiez diagnostiquer quel est le problème lorsque vous obtenez un code d'erreur. Peut être obtenu à partir d'ici le bloc-notes ++

Étape 3: commencer la programmation

Commencer la programmation
Commencer la programmation

Eh bien, la première chose que vous voulez faire est de créer un fichier texte et de l'enregistrer comme vous voulez qu'il soit nommé avec l'extension de fichier.vbsExample:.vbsJe le fais généralement sur le bureau parce que je l'ouvre environ un million de fois pendant que je travaille dessus. Maintenant, faites un clic droit sur le fichier et appuyez sur modifier ou modifier avec le bloc-notes ++

Étape 4: Étape 1: Ouverture d'une fenêtre d'invite de commande

Étape 1: Ouverture d'une fenêtre d'invite de commande
Étape 1: Ouverture d'une fenêtre d'invite de commande

J'ai donc décidé de faire la plupart du travail, j'utiliserais simplement des programmes déjà stockés sur l'ordinateur pour faire ce que je veux donc. Moins de codage et pas de téléchargements… Woohoo. Le plus simple est l'invite de commande. Nous voulons donc ouvrir une fenêtre d'invite de commande pour le faire, nous voulons donc créer un objet pour le faire, nous tapons: set shellobj = CreateObject("WScript. Shell")Ce qu'il fait: définissez une instance de shellobj sur la même valeur pour créer un objet avec un shell de script. De cette façon, tout ce que nous avons à faire est de taper shellobj au lieu de CreateObject ("WScript. Shell") à chaque fois que nous avons besoin d'une nouvelle commande. Maintenant que nous avons créé un objet, nous demandons à l'objet d'ouvrir une fenêtre d'invite de commande. Pour ce faire, nous tapons: shellobj.run "cmd"Ce qu'il fait: ce serait l'équivalent de taper CMD dans la zone d'exécution du menu Démarrer. Si nous n'avions pas défini la variable shellobject, nous aurions dû taper: CreateObject("WScript. Shell").run "cmd"… voyez à quel point c'est plus facile maintenant. Moins de place pour les erreurs. Cliquez sur le fichier… puis sur Enregistrer… puis allez sur le bureau et double-cliquez sur le fichier vbs que vous avez créé, il devrait s'exécuter. votre codage, jusqu'à présent, vous devriez avoir: set shellobj = CreateObject("WScript. Shell")shellobj.run "cmd"Vous pouvez ajouter des commentaires dans votre script pour vous souvenir de ce que vous avez fait plus tard en mettant une virgule devant la ligne comme this:'c'est pour ouvrir une invite de commandeLorsque je code souvent, je vais le faire pour que je me souvienne de ce que j'ai fait plus tard lorsque je le cherche. Le script ignore simplement cette ligne et continue. Si vous les voyez, vous pouvez faire de même.

Étape 5: Étape 2: Configuration des minuteries

Étape 2: Configuration des minuteries
Étape 2: Configuration des minuteries

Ok, maintenant que nous avons une nouvelle fenêtre épatante, nous devons la remplir avec des commandes afin que nous puissions lui faire faire ce que nous voulons. Le problème est que certains ordinateurs mettent plus de temps que d'autres à ouvrir les fenêtres, nous voulons donc que le script attende un peu peu pour commencer. s'il démarre trop tôt, l'ordinateur remplira le blanc avant d'ouvrir la fenêtre et vous obtiendrez soit une commande partielle, soit aucune commande. Nous devons donc configurer une minuterie. Pour ce faire, nous tapons:wscript.sleep 200Ce qu'il fait: Il indique au script d'attendre un temps X avant d'exécuter la commande suivante. 1000 équivaut à une seconde, donc le mien attend un cinquième de seconde. Vous constaterez peut-être que votre ordinateur doit attendre plus ou moins longtemps. Si vous regardez l'ordinateur et qu'il ne tape pas les commandes correctement, changez le nombre en un nombre plus élevé comme 2000 serait 2 secondes et probablement beaucoup de temps. Enregistrez le fichier maintenant, votre code à ce stade devrait être: set shellobj = CreateObject("WScript. Shell")shellobj.run "cmd"wscript.sleep 200

Étape 6: Étape 3: Créez une image

Étape 3: faire une image
Étape 3: faire une image

Je viens d'ouvrir Paint et de taper "Internet Déconnecté" et de le faire 800x600 et de l'enregistrer sous le nom id.bmp et de l'enregistrer dans mon répertoire racine, dans mon cas k:\ mais le vôtre sera probablement c:

Étape 7: Étape 4: Envoi de commandes, ouverture de l'image

Étape 4: Envoi de commandes, ouverture de l'image
Étape 4: Envoi de commandes, ouverture de l'image

Ok, maintenant que nous avons une fenêtre de commande en attente de commandes, tout ce que nous avons à faire est de taper les commandes dans la fenêtre à l'aide de la commande sendkeys. Lorsque nous utilisons la commande sendkeys, c'est comme taper, mais elle tapera ce que nous voulons qu'elle tape. Tout ce que nous pouvons taper, nous pouvons l'envoyer, y compris les touches d'entrée nécessaires à l'exécution de programmes. Maintenant que nous savons comment envoyer des clés, ouvrons notre image que nous venons de créer, puis insérez une autre postface de minuterie afin que l'image ait le temps de se charger. Pour ce faire, nous tapons:shellobj.sendkeys "k:\id.bmp{enter}"wscript.sleep 200Ce qu'il fait: C'est la même chose que de taper k:\id.bmp dans la boîte d'exécution. Il devrait ouvrir votre image dans la visionneuse d'images par défaut pour un bmp… dans mon cas, il s'agit d'une visionneuse d'images et de télécopies Windows, mais la plupart des gens installent des programmes après-vente qui le font également, alors qui sait dans quoi le vôtre s'ouvrira. maintenant, enregistrez votre fichier et exécutez-le. Vous devriez obtenir une invite de commande et une image à apparaître. jusqu'ici tout va bien !!! votre code jusqu'à présent devrait être: set shellobj = CreateObject("WScript. Shell")shellobj.run "cmd"wscript.sleep 200shellobj.sendkeys "k:\id.bmp{enter}"wscript. dormir 200

Étape 8: Étape 5: Envoi de commandes, arrêtez Internet

Étape 5: Envoi de commandes, arrêtez Internet
Étape 5: Envoi de commandes, arrêtez Internet

À ce stade, si vous ne l'avez pas encore fait, téléchargez le fichier pdf à la fin, donc si vous vous trompez, vous avez un Instructable téléchargé sur la façon de le réparer. C'est maintenant que le plaisir commence. Ok donc nous allons utiliser ipconfig pour libérer notre adresse IP. Sans adresse IP, nous ne pouvons pas obtenir de trafic Internet car le routeur ne sait pas où l'envoyer à l'ordinateur. Pour ce faire, nous tapons: shellobj.sendkeys "ipconfig /release{enter}" Ce qu'il fait: Cela demande au programme IPCONFIG de libérer l'adresse IP. le {enter} indique à l'ordinateur que vous appuyez sur la touche Entrée. ce serait comme taper ipconfig /release dans la fenêtre d'exécution et appuyer sur Entrée. Habituellement, après cela, si vous exécutez ipconfig, il vous dira que votre adresse IP est 0.0.0.0. C'est ce que nous voulons. Sans adresse IP, le routeur ne sait pas que nous sommes ici et aucun programme ne peut « composer » pour ainsi dire. Maintenant que nous avons terminé avec succès de fermer l'adresse IP, nous voulons fermer la fenêtre. Maintenant, nous pourrions écrire une autre ligne qui dit: shellobj.sendkeys "exit{enter}" mais il serait plus facile de simplement modifier la ligne ci-dessus et de l'ajouter à la fin afin que vous ayez: shellobj.sendkeys "ipconfig /release{enter}exit {enter}"Maintenant, enregistrez-le mais ne l'exécutez pas car vous couperez votre connexion Internet. Si vous l'exécutez et que votre connexion Internet est coupée, changez simplement le commutateur de ipconfig /release à ipconfig /renew et exécutez-le à nouveau et il devrait le réactiver. Et si tout le reste échoue, redémarrez et tout ira bien. Votre code jusqu'à présent devrait être: set shellobj = CreateObject("WScript. Shell")shellobj.run "cmd"wscript.sleep 200shellobj.sendkeys "k:\id.bmp{ enter}"wscript.sleep 200shellobj.sendkeys "ipconfig /release{enter}exit{enter}"

Étape 9: Étape 6: Création d'une boîte de message et attente de réponse

Étape 6: Création d'une boîte de message et attente de réponse
Étape 6: Création d'une boîte de message et attente de réponse

Ok, maintenant que nous avons réussi à fermer Internet et à fermer la fenêtre d'invite de commande, nous voulons qu'une boîte de message s'affiche pour vous demander si nous voulons rallumer Internet. Mais voici où cela devient difficile, nous voulons qu'il attende pour un oui, mais si nous cliquons sur non, nous ne voulons pas qu'il disparaisse, nous utiliserons donc une instruction while pour le faire. Nous devons d'abord dimensionner une variable pour la boîte à messages afin de pouvoir lui attribuer des variables numériques. Je sais que cela semble déroutant, mais ce n'est vraiment pas le cas. nous l'avons déjà fait une fois avec la ligne: set shellobj = CreateObject("WScript. Shell") celle-ci est encore plus facile pour la configurer, nous tapons simplement:Dim MyVarCe qu'il fait: nous avons maintenant dimensionné une variable nommée MyVarQuand vous obtenez un" oui La boîte de message / non " apparaît sur votre écran et vous cliquez sur les boutons, elle attribue une valeur à chaque bouton, dans ce cas " oui " vaut 1 et " non " vaut 2. Nous voulons que la variable commence par un " non " donc nous lui attribuons le numéro 2 par défaut, de cette façon, il s'arrête jusqu'à ce qu'un bouton soit cliqué. Pour ce faire, nous tapons: myvar=2Ce qu'il fait: maintenant MyVar est égal à 2, de cette façon, dans la ligne suivante, il s'arrêtera et attendra l'entrée. Maintenant, nous voulons juste qu'il reste là et attendons jusqu'à ce que nous soyons prêts à rallumer Internet. = 2 puis continuez à boucler la boîte de message jusqu'à ce que nous obtenions une autre valeur que 2, qui dans ce cas ne pourrait être que 1 Ensuite, nous voulons réellement faire apparaître une boîte de message avec des boutons oui/non. ceci, nous tapons:MyVar = MsgBox ("Activer la connexion Internet", 65, "Activer la connexion Internet") Ce qu'il fait: Maintenant, la variable MyVar sera affectée quelle que soit la valeur affectée au bouton sur lequel on clique dans la boîte de message. la première partie des guillemets est ce que la boîte de message dira réellement. Le 65 le désigne comme une boîte de message Oui/Non. et la dernière partie entre guillemets est l'étiquette de la boîte de message. une boîte de message. Maintenant que nous avons une boîte de message, nous devons fermer l'instruction while. Tout ce qui se trouve entre l'ouverture et la fermeture de l'instruction while s'exécutera chaque fois que vous cliquez sur non, car si vous cliquez sur non, la valeur est toujours 2 et revient à la première partie. do: Une fois que vous avez terminé une instruction while, elle agira comme une boucle jusqu'à ce que l'argument ne soit plus satisfait. Donc, si vous continuez à appuyer sur non, il bouclera, mais une fois que vous aurez appuyé sur oui, il se libérera de la boucle et continuera avec le script. Enregistrez le fichier mais attendez de l'exécuter jusqu'à l'étape suivante. Votre code jusqu'à présent devrait être: set shellobj = CreateObject("WScript. Shell")shellobj.run "cmd"wscript.sleep 200shellobj.sendkeys "k:\id.bmp{ enter}"wscript.sleep 200shellobj.sendkeys "ipconfig /release{enter}exit{enter}"Dim MyVarmyvar=2while myvar=2MyVar = MsgBox ("Activer la connexion Internet", 65, "Activer la connexion Internet")wend

Étape 10: Étape 7: Réactivation d'Internet

Étape 7: réactiver Internet
Étape 7: réactiver Internet
Étape 7: réactiver Internet
Étape 7: réactiver Internet
Étape 7: réactiver Internet
Étape 7: réactiver Internet

Maintenant que quelqu'un a finalement cliqué sur oui et qu'il a passé l'instruction while, nous devons nous rendre sur Internet. J'affiche généralement une confirmation pour que l'utilisateur final sache ce qui se passe, mais c'est purement facultatif. Pour afficher une confirmation, tapez: msgbox("Nous allons maintenant réactiver la connexion Internet !!!") Ce qu'il fait: il envoie une boîte de message qui dit Nous allons maintenant réactiver la connexion Internet !!! et vous donne un bouton ok pour cliquer. Maintenant, tout ce que nous avons à faire est de rallumer Internet et de tout fermer. tapez:shellobj.run "cmd"wscript.sleep 200shellobj.sendkeys "ipconfig /renew{enter}"Ce qu'il fait: il inverse la commande d'arrêt d'avant et renouvelle votre adresse IP. Une fois que vous avez renouvelé votre adresse IP, vous pouvez à nouveau vous connecter à Internet. Il ne nous reste plus qu'à nettoyer les fenêtres ouvertes. Encore une fois, nous pourrions utiliser une commande sendkeys, mais je vais juste ajouter la dernière ligne pour contenir également les nettoyages. Dans ce cas, je vais utiliser le programme taskkill pour tuer le programme affichant l'image. Dans ce cas, il s'agit de la visionneuse d'images et de fax Windows et apparaît sous le nom rundll32.exe dans l'onglet processus du gestionnaire de tâches, c'est donc ce que nous devons tuer. Si votre image s'ouvre à l'aide d'un autre programme, comme irfanview ou acdsee, recherchez le nom qu'elle porte dans l'onglet processus et remplacez rundll32.exe par le nom que vous trouvez. La commande serait:taskkill /F /IM rundll32.exe fait: le taskkill est le nom du programme le commutateur /F lui dit de forcer un kill et le commutateur /IM lui dit le nom de l'imageAlors maintenant nous ajoutons cela à la dernière ligne, ajoutons une entrée pour exécuter la commande puis un exit et une autre entrée et cela ressemble à ceci: shellobj.sendkeys "ipconfig /renew{enter}taskkill /F /IM rundll32.exe{enter}exit{enter}" Enregistrez votre fichier.

Étape 11: Produit fini

Produit fini
Produit fini

Si tout s'est bien passé, votre produit fini devrait ressembler à ceci: set shellobj = CreateObject("WScript. Shell")shellobj.run "cmd"wscript.sleep 200shellobj.sendkeys "k:\id.bmp{enter}"wscript.sleep 200shellobj.sendkeys "ipconfig /release{enter}exit{enter}"Dim MyVarmyvar=2while myvar=2MyVar = MsgBox ("Activer la connexion Internet", 65, "Activer la connexion Internet")wendmsgbox ("Nous allons maintenant activer Internet Reconnexion !!!")shellobj.run "cmd"wscript.sleep 200shellobj.sendkeys "ipconfig /renew{enter}taskkill /F /IM rundll32.exe{enter}exit{enter}" _fin du script_Maintenant que la programmation est fait, vous pouvez exécuter le programme. Que devrait-il se passer: 1.) Vous devriez faire apparaître la fenêtre CMD pendant une très courte période, puis fermer2.) Votre Internet ne devrait plus fonctionner. mais vous ne le verrez pas3.) Votre image devrait s'ouvrir.4.) Vous devriez obtenir une fenêtre contextuelle vous demandant si vous souhaitez réactiver Internet.5.) Peu importe le nombre de fois que vous cliquez sur Non, la boîte de message devrait sonner à vous ouvrez à nouveau pour demander si vous souhaitez réactiver Internet. 6.) Une fois que vous avez cliqué sur Oui, la boîte de message devrait disparaître et une fenêtre CMD devrait s'afficher de nouveau7.) Une fois l'adresse IP renouvelée, la fenêtre CMD et l'image devrait fermer. Voilà. Un VBscript très simple pour allumer et éteindre votre Internet. J'espère que vous aimez. En fait, j'ai créé un autre script presque identique à celui-ci qui éteint les adaptateurs réseau à l'aide d'un programme appelé DevCon, qui ressemble à un gestionnaire de périphériques en ligne de commande. Fonctionne très bien pour. Le script est identique à celui-ci sauf que dans celui-ci il y a des commandes pour ipconfig que l'on a des commandes pour DevCon.

Conseillé: