Table des matières:

Utilisation de VBScript avec des lecteurs montés : 6 étapes
Utilisation de VBScript avec des lecteurs montés : 6 étapes

Vidéo: Utilisation de VBScript avec des lecteurs montés : 6 étapes

Vidéo: Utilisation de VBScript avec des lecteurs montés : 6 étapes
Vidéo: VBA Excel formation complète de A à Z Partie 1 2024, Novembre
Anonim
Utilisation de VBScript avec des lecteurs montés
Utilisation de VBScript avec des lecteurs montés
Utilisation de VBScript avec des lecteurs montés
Utilisation de VBScript avec des lecteurs montés

Cette instructable est sur demande. Beaucoup d'entre vous peuvent reconnaître cela d'un précédent instructable que j'avais fait qui était https://www.instructables.com/id/Intro_to_VB_Script_a_beginners_guide/. Eh bien, dans ce cas, techwiz24 m'a demandé: pourriez-vous l'utiliser pour déconnecter un lecteur réseau, afficher une image, puis demander à reconnecter le lecteur réseau ? et par lecteur réseau, je veux dire un disque dur externe. Lorsqu'il se reconnecte, j'en ai également besoin pour nommer le disque dur externe, comme HDD1e. Je peux tout obtenir sauf les commandes CMD pour cela. Je pense que vous pouvez utiliser diskpart, mais je ne suis pas sûr, Eh bien, je lui ai dit que je travaillerais dessus et créerais une nouvelle instructable si je le découvrais. Eh bien, j'ai compris. Alors voilà. Si vous n'avez pas lu mon instructable précédent, vous pouvez le trouver ici. https://www.instructables.com/id/Intro_to_VB_Script_a_beginners_guide/ Je suggérerais de le lire avant de lire celui-ci si vous ne l'avez pas encore lu car la plupart des choses seront les mêmes et je ne récupérerai pas les bases. Et parce que lemonie s'est plaint dans l'un de mes autres instructables que "En voulant afficher des fonds d'écran à plusieurs reprises, vous rendez cela plutôt mauvais. L'utilisation de l'écran d'impression ALT montrerait mieux les boîtes de dialogue". J'ai décidé que je ne mettrais pas d'images qui n'avaient rien à voir avec l'instructable puisque l'instructable n'est pas une chose visuelle de toute façon et les images ne lui feraient pas de mal ni ne l'aideraient alors pourquoi prendre le temps de faire des captures d'écran juste pour quelqu'un peut se plaindre que je ne les ai pas correctement encapsulés. Donc, dans celui-ci, chaque choix sera un fond d'écran que j'aime et que j'aime bien et que je vis si cela a l'air mauvais ou non !!!

Étape 1: Recherche

Recherche
Recherche
Recherche
Recherche

La première chose que nous devons faire est de trouver le GUID du disque dur que nous voulons supprimer. Le GUID est un identifiant unique au monde. Cela permet à votre ordinateur de trouver un disque dur spécifique, quelle que soit la lettre de lecteur qui lui est attribuée. Un moyen simple de le faire est d'ouvrir une fenêtre CMD et de taper "MOUNTVOL"

Cela fera apparaître la page d'aide pour Mountvol. Si vous regardez au bas de la liste, il devrait afficher tous les disques durs disponibles, leurs lettres de lecteur et leurs chemins. En faisant cela sur le mien, j'ai recueilli ces informations: crée, supprime ou répertorie un point de montage de volume. MOUNTVOL [lecteur:]chemin NomVolume MOUNTVOL [lecteur:]chemin /D MOUNTVOL [lecteur:]chemin /L chemin Spécifie le répertoire NTFS existant où résidera le point de montage. VolumeName Spécifie le nom du volume qui est la cible du point de montage. /D Supprime le point de montage du volume du répertoire spécifié. /L Répertorie le nom du volume monté pour le répertoire spécifié. Les valeurs possibles pour VolumeName ainsi que les points de montage actuels sont: \?\Volume{6ad2db35-4ab2-11de-964e-806d6172696f}\ C:\ \?\Volume{6ad2db33-4ab2-11de-964e-806d6172696f}\ D: / \?\Volume{6ad2db34-4ab2-11de-964e-806d6172696f}\ E:\ \?\Volume{b76a1f58-662f-11de-8a61-001111cb3c76}\ F:\ \?\Volume{6ad2db32-4ab2 -11de-964e-806d6172696f}\ A:\ \?\Volume{c0ea045c-56fe-11de-8a5a-001111cb3c76}\ G:\ _ Maintenant si vous regardez le bas de la liste, vous verrez un tas de charabia qui commence par \?\volume et se termine par une lettre de lecteur. C'est ce dont on a besoin! Ok donc décomposons ce que nous avons ici: Nous avons le volume représenté par \?\volume puis nous avons une accolade puis un tas de chiffres, de lettres et de tirets. Les chiffres, les lettres et les tirets sont en fait le GUID du lecteur en question, puis nous avons une autre accolade puis une barre oblique inverse et la lettre du lecteur. Cela devrait donc être assez facile à suivre. Donc dans mon ordinateur j'ai \?\Volume{6ad2db35-4ab2-11de-964e-806d5172696f}\ C:\ c'est mon disque dur principal pour l'ordinateur \?\Volume{6ad2db33-4ab2-11de-964e-806d5172696f }\ D:\ Quel est un graveur de DVD \?\Volume{6ad2db34-4ab2-11de-964e-806d5172696f}\ E:\ Un autre graveur de DVD \?\Volume{b76a1f58-662f-11de-8a61-001114cb3c76}\ F:\ Un faux dvd pour que je puisse monter des fichiers ISO créés dans mon programme Daemon que j'ai \?\Volume{6ad2db32-4ab2-11de-954e-806d6172696f}\ A:\ Un lecteur de disquette 3.5…. Oui je sais je sais mais malheureusement je les utilise encore de temps en temps. \?\Volume{c0ea045c-56fe-11de-8a5a-001111cb3c76}\ G:\ Celui-ci est le lecteur en question que je souhaite supprimer. Dans ce cas, il s'agit en fait d'un lecteur de saut de 128 Mo que j'ai utilisé pour les tests. De cette façon, si je l'embêtais, je n'ai pas perdu de disque dur ou quelque chose du genre.

Étape 2: Utilisation de Mountvol

Utilisation de Mountvol
Utilisation de Mountvol
Utilisation de Mountvol
Utilisation de Mountvol

Ok, maintenant que nous avons le GUID, nous pouvons l'utiliser pour monter et démonter le lecteur en question. Maintenant, avant d'écrire un script, nous voulons nous assurer qu'il fonctionne et qu'il s'agit du bon lecteur. g drive est le lecteur avec lequel je travaille, donc le mien dira g:\ cependant vous devez mettre la lettre de lecteur du lecteur avec lequel vous vous réveillez. même avec le GUID, car il est unique à chaque lecteur et le vôtre NE sera PAS le même que le mien. référence au disque démonté. Donc, affichez une invite de commande en allant exécuter et en tapant cmdat l'invite tapez:mountvol g:\ /dnow lorsque nous tapons mountvol dans l'invite, tout est pareil sauf maintenant qu'il dit: \?\ Volume{c0ea045c-56fe-11de-8a5a-001111cb3c76}\ *** PAS DE POINTS DE MONTAGE ***au lieu de \?\Volume{c0ea045c-56fe-11de-8a5a-001111cb3c76}\ G:\C'est bien ça veut dire que nous supprimé celui que nous voulions. Maintenant, nous devons le remonter Tapez ceci à l'invite de commande:mountvol g: \?\Volume{c0ea045c-56fe-11de-8a5a-001111cb3c76}\puis tapez mountvol une fois de plus et tout devrait redevenir comme avant Le contexte pour réactiver le lecteur est le suivant: le mot mountvol suivi d'un espace puis de la lettre du lecteur et de deux points suivis d'un espace puis d'une barre oblique inverse barre oblique inverse point d'interrogation barre oblique inverse puis le mot volume puis une accolade ouverte puis le GUID puis une fermeture accolade puis barre oblique inverse

Étape 3: Travailler avec des étiquettes

Travailler avec des étiquettes
Travailler avec des étiquettes
Travailler avec des étiquettes
Travailler avec des étiquettes

Maintenant, une partie de ce que techwiz24 m'a demandé était quand il se reconnecte, j'en ai également besoin pour nommer le disque dur externe, comme HDD1e.

Pour ce faire, nous utilisons simplement la commande label, c'est assez simple. Il suffit d'ouvrir une fenêtre de commande comme la dernière fois et de taper: g: Cela changera votre répertoire en g:> Ensuite, tapez vol et ne prenez pas le nom de volume Ensuite, tapez simplement label et tout ce que vous voulez qu'il s'appelle donc si je voulais nommer mon disque dur bobby je taperais: label bobby Ensuite, tapez à nouveau vol et il montrera que le nouveau nom du volume est bobby Maintenant, cela ne fonctionne que si vous travaillez dans le répertoire du volume que vous souhaitez modifier, cependant, lorsque nous créons notre script, nous ne voulons pas changer de répertoire, puis changeons de volume, nous tapons donc simplement: label g: bobby vous a dit que c'était un peu simple.

Étape 4: ajouter ce que nous avons appris dans le script

Ajouter ce que nous avons appris dans le script
Ajouter ce que nous avons appris dans le script
Ajouter ce que nous avons appris dans le script
Ajouter ce que nous avons appris dans le script

Ok, maintenant nous créons simplement notre script comme nous le faisions auparavant, mais au lieu d'utiliser les commandes ipconfig, nous utiliserons maintenant les commandes mountvol. Voici le code pour désactiver le lecteur: set shellobj = CreateObject("WScript. Shell")shellobj.run "cmd"wscript.sleep 200shellobj.sendkeys "mountvol g:\ /d{enter}"_Vous devriez comprendre tout ça jusqu'ici grâce à nos petits testsVoici le code pour ouvrir une image comme il le voulait et fermer la première fenêtre d'invite de commande: wscript.sleep 2000shellobj.sendkeys "c:\3.jpg{enter}exit{enter}"_Comme vous pouvez le voir, vous pouvez ajouter plusieurs commandes sur une seule ligne tant que la fenêtre est toujours ouverte. Il attendra que la dernière commande soit exécutée avant de lancer la suivante. Voici le code pour les fenêtres contextuelles afin que votre script reste en cours d'exécution jusqu'à ce que vous réactiviez le lecteur: Dim MyVarmyvar=2while myvar=2MyVar = MsgBox ("Retourner le lecteur on", 65, "Rallumez le lecteur")wendmsgbox("Nous allons maintenant rallumer le disque dur !!!")_Notez qu'en mettant la variable Myvar = à 2 qui est la valeur du bouton d'annulation sur la boîte de message nous exécuterons une boucle continue jusqu'à ce que le bouton ok soit enfoncé. Cela nous oblige à cliquer sur oui pour terminer le script. Ce n'est qu'après avoir poussé yes que la valeur myval passe à 1 et permet à la boucle d'être interrompue, donc de continuer le script et de lancer la boîte de message indiquant que le lecteur sera alors réactivé. Maintenant, si vous vous souvenez d'avant, la commande suivante ne sera pas exécutée jusqu'à ce que la dernière commande soit terminée, donc jusqu'à ce que le bouton ok soit enfoncé dans la boîte de message, aucune action ne sera entreprise. Oui, nous pourrions simplement utiliser la boîte de message pour réactiver le lecteur, mais si vous ne le souhaitez pas encore activé, mais cliquez accidentellement sur ok, il n'y a aucune protection. Avec la case oui/non, vous n'avez pas d'autre choix que de cliquer sur oui. Nous pourrions nous débarrasser de la boîte de message supplémentaire, mais j'aime avoir la confirmation que l'action est en cours. Nous arrivons maintenant à l'endroit où le remontage, l'étiquetage et le nettoyage sont effectués. On pourrait penser que c'est juste simple, mais ce n'est pas le cas. Si vous remarquez à chaque fois que nous voulons placer une touche d'entrée ou de tabulation dans notre ligne sendkeys, nous tapons simplement {ENTER}. La raison en est qu'il considère les { et } comme des caractères spéciaux. Par conséquent, si nous utilisons les crochets comme ils sont imprimés dans le guid {c0ea045c-56fe-11de-8a5a-001111cb3c76}, la commande sendkeys appuierait essentiellement sur le bouton c0ea045c-56fe-11de-8a5a-001111cb3c76. Puisqu'il n'y a pas de bouton de ce type, notre script planterait, puis aucun lecteur ne serait remonté pour nous. Alors, comment pouvons-nous contourner cela? Eh bien, ironiquement, la réponse est entre parenthèses. Étant donné que tout ce qui se trouve entre les accolades ouvertes et fermées sera essentiellement envoyé sous forme de touche enfoncée, nous mettons simplement l'accolade que nous voulons à l'intérieur des accolades ouvertes et fermées. Ainsi, une ouverture serait {{} et une fermeture serait {}}Alors maintenant, la fin de notre code ressemblerait à ceci: shellobj.run "cmd"wscript.sleep 200shellobj.sendkeys "mountvol g: \?\Volume{ {}c0ea045c-56fe-11de-8a5a-001111cb3c76{}}\{enter}label g: HDD1e{enter}taskkill /F /IM rundll32.exe{enter}exit{enter}"

Étape 5: Le script terminé

Le script terminé
Le script terminé
Le script terminé
Le script terminé

Voici le script terminé sans interruption que vous pouvez simplement glisser directement dans votre script et en finir. Vous devez rediriger la ligne qui fait référence à l'image vers une image que vous voulez dans un répertoire que vous voulez, mais n'oubliez pas de ne pas utiliser de répertoire sur le volume que vous supprimez ou il se bloquera car il ne le trouvera pas dans le répertoire. N'oubliez pas non plus que vous devez remplacer les lettres de lecteur et le GUID par vos lettres réelles, car elles reflètent les miennes et pourraient éventuellement perturber votre système. Recherchez les lignes Rem avant la ligne que vous devez modifier et tout devrait bien se passer: set shellobj = CreateObject("WScript. Shell")shellobj.run "cmd"wscript.sleep 200rem modifiez la ligne suivante pour refléter la lettre de lecteur de votre driveshellobj.sendkeys "mountvol g:\ /d{enter}"wscript.sleep 2000rem modifiez la ligne suivante pour refléter le nom et le répertoire réels de l'image que vous utilisezshellobj.sendkeys "c:\3.jpg{enter}exit{enter} "Dim MyVarmyvar=2while myvar=2MyVar = MsgBox ("Rallumer le lecteur", 65, "Rallumer le lecteur")wendmsgbox("Nous allons maintenant rallumer le disque dur !!!")shellobj.run "cmd"wscript.sleep 200rem remplacez le GUID par votre GUID réel et les lettres de lecteur (les deux) par la lettre rem du lecteur réel et l'étiquette par n'importe quelle étiquette que vous souhaitez que le lecteur soit étiqueté shellobj.sendkeys "mountvol g: \?\Volume {{}c0ea045c-56fe-11de-8a5a-001111cb3c76{}}\{enter}label g: HDD1e{enter}taskkill /F /IM rundll32.exe{enter}exit{enter}"

Étape 6: Aucune étape, vraiment juste un commentaire

Pas d'étapes vraiment juste un commentaire
Pas d'étapes vraiment juste un commentaire

Eh bien, j'espère que cela vous a aidé…. Si quelque chose n'est pas assez bien expliqué, faites-le moi savoir et j'essaierai de mieux expliquer. Et j'espère que tout le monde a aimé les fonds d'écran. Non je ne les ai pas fait…. ce sont tous ceux que j'ai trouvé sur le net.

REMARQUE: Si quelqu'un a des plaintes au sujet de mon instructable, veuillez les transmettre à [email protected]. Je veux dire sérieusement, tu penses vraiment que je m'en fous de ce que tu penses ? Si vous ne voulez pas apprendre quelque chose, ne le faites pas, si vous le faites, mais ne soyez pas un imbécile et ne vous plaignez pas parce que les images non essentielles ne sont pas formatées correctement ou quelle que soit la cause, franchement, JE M'EN FAIS !!!

Conseillé: