Table des matières:

Introduction au script VB : un guide pour débutants : Partie 2 : Travailler avec des fichiers : 13 étapes
Introduction au script VB : un guide pour débutants : Partie 2 : Travailler avec des fichiers : 13 étapes

Vidéo: Introduction au script VB : un guide pour débutants : Partie 2 : Travailler avec des fichiers : 13 étapes

Vidéo: Introduction au script VB : un guide pour débutants : Partie 2 : Travailler avec des fichiers : 13 étapes
Vidéo: DÉBUTER EN PROGRAMMATION [PARTIE 1 : BINAIRE] 2024, Juillet
Anonim
Intro to VB Script: a Beginners Guide: Partie 2: Travailler avec des fichiers
Intro to VB Script: a Beginners Guide: Partie 2: Travailler avec des fichiers

Eh bien, dans mon dernier instructable VBScript, j'ai expliqué comment créer un script pour éteindre votre Internet pour jouer à Xbox360. Aujourd'hui j'ai un autre problème. Mon ordinateur s'est éteint à des moments aléatoires et je souhaite me connecter à chaque redémarrage de l'ordinateur dans un fichier. J'ai l'impression que le problème vient de la carte vidéo mais je veux m'en assurer. Je laisse l'ordinateur allumé en permanence mais je ne peux pas le surveiller 24h/24 et 7j/7, donc ma solution la plus simple consiste à écrire un horodatage dans un fichier à chaque redémarrage. Parce qu'il me donne un BSOD à chaque fois, il sera difficile de se connecter lorsqu'il s'arrête, je dois donc l'obtenir lorsqu'il se rallume. C'est la partie facile. En raison du fait que ce n'est que temporaire jusqu'à ce que je trouve ce qui ne va pas avec l'ordinateur, je ne vais pas écrire dans le registre ou en faire un service afin qu'il démarre au moment du démarrage. Et pour le faire redémarrer à chaque fois qu'il s'arrête, je devrai modifier le bios.

Étape 1: Modification du bios pour le faire redémarrer en cas de panne de courant

Modification du bios pour le faire redémarrer en cas de panne de courant
Modification du bios pour le faire redémarrer en cas de panne de courant

Je ne sais pas si mon problème est lié à une panne d'alimentation ou à ma carte vidéo ou de quoi il s'agit. Mais je sais que l'ordinateur redémarre de temps en temps. Donc, pour m'assurer qu'il redémarre après une panne de courant (c'est-à-dire que l'alimentation s'éteint), je souhaite modifier le bios. En raison du fait qu'il existe tellement de fabricants de bios différents, il serait trop difficile d'énumérer toutes les différentes façons de le faire dans tous les différents écrans de bios, je vais donc vous donner les bases et vous laisser découvrir les détails par vous-même. Fondamentalement, pour accéder à votre bios, vous devrez appuyer sur un bouton au démarrage. Habituellement, il dira quelque chose comme "appuyez sur Suppr pour entrer dans la configuration" ou "F2". Différents fabricants vous donnent différentes manières, mais il s'agit généralement de la touche "F2" ou "Suppr". Dans tous les cas, surveillez-le et appuyez sur la touche qu'il vous dit d'appuyer. Vous arriverez maintenant à un écran généralement gris ou bleu, mais encore une fois, cela dépend de la marque de votre bios. Vous rechercherez une option de paramètres d'alimentation. Ce sera soit dans une fenêtre à part entière comme dans la capture d'écran AMIBIOS (empruntée au guide du matériel de toms), soit dans certains cas, dans une fenêtre de fonctionnalités avancées du bios. Quoi qu'il en soit, vous recherchez un paramètre "restauration en cas de perte d'alimentation/alimentation". Il peut s'appeler quelque chose d'autre mais ce sera proche de cela. Cherchez-le. Il aura généralement trois options (dernier état, allumé après coupure de courant, éteint après coupure de courant). Vous souhaitez l'activer après une coupure de courant. Assurez-vous de sauvegarder vos paramètres et de quitter le bios. Désormais, lorsque votre alimentation tombe en panne ou que vous débranchez votre machine, elle redémarrera dès qu'elle sera rétablie. Ouaishhhhh!!!!!!!!!!!!!!!!

Étape 2: Rédaction du script Partie 1: Élaboration d'un plan

Écrire le script Partie 1: Faire un plan
Écrire le script Partie 1: Faire un plan
Écrire le script Partie 1: Faire un plan
Écrire le script Partie 1: Faire un plan
Écrire le script Partie 1: Faire un plan
Écrire le script Partie 1: Faire un plan
Écrire le script Partie 1: Faire un plan
Écrire le script Partie 1: Faire un plan

La première chose que nous voulons faire est de créer un plan. Que voulons-nous exactement que le script fasse. A.) En cas de panne de courant ou de BSOD, nous voulons qu'il redémarre. (Soigné à l'étape 1 Modification du BiosB.) Dès qu'il redémarre, nous voulons écrire dans un fichier la date et l'heure exactes de son redémarrage. C.) Nous voulons pouvoir modifier ce fichier. S'il redémarre plus d'une fois, nous ne le saurons jamais. D.) Nous voulons qu'il y ait une correction d'erreur afin qu'il ne se trompe pas et nous nous assurons d'obtenir tous nos redémarrages sans en manquer à cause d'un mauvais codage. E.) Nous le voulons pour faire apparaître un message disant qu'il a redémarré. F.) Nous voulons qu'il ouvre le fichier dans lequel nous avons écrit afin que nous puissions voir une liste de tous les redémarrages lorsque nous cliquons sur ok sur le message contextuel.

Étape 3: écriture du script Partie 2: création de votre script et affectation des variables

Rédaction du script Partie 2: Création de votre script et affectation des variables
Rédaction du script Partie 2: Création de votre script et affectation des variables

Ok, tout d'abord, créez un document texte et renommez-le en any_name.vbs. J'ai utilisé shutdown_catcher.vbs mais vous pouvez utiliser n'importe quoi. Maintenant, faites un clic droit sur le fichier vbs et appuyez sur modifier. devrait chercher à l'obtenir. Ok maintenant, la première chose que nous voulons faire est de créer des variables. Les variables ne sont fondamentalement qu'un espace réservé, nous n'avons donc pas à écrire tout un tas de choses un tas de fois. exemple: nous avons une phrase qui dit "le renard brun rapide saute par-dessus les chiens paresseux en arrière". mais c'est dans notre code 20 fois. nous pouvons soit taper la phrase entière 20 fois, soit créer une variable et affecter la phrase à cette variable. Dans cet exemple, nous créons la variable strSentence puis affectons "le renard brun rapide saute par-dessus les chiens paresseux" à cette variable. Maintenant, tout ce que nous avons à faire est de taper strSentence à chaque fois que nous avons besoin de la phrase et il sait taper "le renard brun rapide saute par-dessus les chiens paresseux en arrière" comment faire: si nous avons plusieurs variables du même type, nous pouvons mettre placez-les sur la même ligne et séparez les variables par des virgules. Pour créer une variable, nous devons faire ce qu'on appelle le dimensionnement de la variable. Pour ce faire, nous tapons Dim avant la variable puis nous mettons un préfixe sur la variable afin de savoir ce que la variable représente. Les exemples sont str pour une variable chaîne obj pour une variable objet const pour une constante…. La liste s'allonge encore et encore. ce sont ceux que nous utiliserons dans ce script, je vais donc les expliquer un peu. une chaîne est généralement du texte comme une phrase. Un objet est généralement quelque chose de physique comme un fichier ou un programme. et une constante est quelque chose qui aura toujours la même signification tout au long du script. REMARQUE: À TOUT MOMENT QU'UNE LIGNE A UN SINGLE ' AVANT ELLE, LA LIGNE SERA IGNORÉE PAR LE SCRIPT. ILS PEUVENT SE SOUVENIR DE CE QU'ILS ONT FAIT PLUS TARD LORS DE L'EXAMEN DU CODE. JE VAIS LES UTILISER POUR FAIRE DES COMMENTAIRES SUR LE CODE AFIN QUE VOUS POUVEZ VOIR POURQUOI J'AI FAIT COMME J'AI FAIT. ET ILS SERONT AU-DESSUS DE LA LIGNE SUR LAQUELLE ILS SONT COMMENTER. Utilisation réelle:'cette ligne vous oblige à définir toutes les variables. Sans cela, toute variable non définie sera traitée comme un objetOption Explicit'maintenant nous créons 5 variables pour les dossiers et fichiers dont nous aurons besoin'nommez-les comme vous le souhaitez mais la convention est preNameDim objFiSyOb, objSysFold, objShell, objFile, objTextFile'maintenant nous avons besoin pour créer des variables de chaîne pour le répertoire, le fichier et le nom du fichierDim strDir, strFile, strFileName'attribuez maintenant des valeurs aux variables'le strDir est notre répertoire nous voulons le dossier dans strDir = "C:\Catcher"'le strFile est où nous voulons le document texte et son nomstrFile = "\Shutdown_catcher.txt"'le nom strfile est donc nous avons le nom du fichier à utiliser dans pop upsstrFileName ="Shutdown_catcher.txt"'ensuite nous devons attribuer une constante pour accéder au fichier, nous avons trois options'nous n'utiliserons que l'ajout dans ce code mais il est bon de les connaître tous. Const forReading=1, forWriting = 2, ForAppending = 8'Enfin, nous devons définir une variable pour le système de fichiers object afin que nous puissions l'appeler plus tard quand nous en avons besoinSet objFiS yOb = CreateObject("Scripting. FileSystemObject")

Étape 4: Explications entre les deux

Explications dans Entre
Explications dans Entre

Maintenant que nous avons dimensionné nos variables, tout ce que nous avons à faire est de rappeler cette variable spécifique à chaque fois. Cela réduit non seulement la quantité de frappe que nous faisons, mais crée également moins d'erreurs à cause des fautes d'orthographe. & strFile, ForAppending, True)'écrivez la nouvelle ligne dans le fichierobjTextFile. WriteLine("Votre ordinateur s'éteint le " & date & " at " & time)'fermez le fichierobjTextFile. Close'faites un pop upWscript. Echo ("Votre ordinateur Arrêtez le " & date & " à " & heure)'ouvrez le fichier dans IESet objShell = CreateObject("WScript. Shell")objShell.run ("Explorer" &" " & strDir & "\shutdown_catcher.txt") Le problème est qu'il n'y aura pas de correction d'erreur, et toute erreur simple comme un fichier non existant ou une variable déjà affectée fera planter le script.

Étape 5: Écriture du script Partie 3: Instructions If Then comme correction d'erreur

Écriture du script, partie 3: instructions If Then comme correction d'erreur
Écriture du script, partie 3: instructions If Then comme correction d'erreur

Le moyen le plus simple de corriger les erreurs est d'utiliser les instructions if/then. Fondamentalement, une instruction if then dit que si quelque chose se produit, faites ceci, sinon faites cela. En imbriquant les instructions if/then, vous pouvez créer une chaîne de choses qui doivent se produire. Si a et b et c se produisent alors faites ceci sinon faites cela. exemple: nous voulons nous assurer que le fichier dans lequel nous voulons écrire est là si nous le trouvons nous voulons ne rien faire si nous ne le trouvons pas nous voulons le créer ou nous voulez vérifier si le dossier est là et sinon le créer, puis vérifier si le fichier est là une fois que nous avons trouvé le dossier et sinon le créer le premier est un exemple d'une déclaration if then la seconde est un if then imbriqué. Comment nous le faisons: il y a quatre parties dans une instruction if then if/then elseend si c'est fondamentalement si c'est vrai alors faites ceci sinon faites cela alors terminez l'instruction une instruction if then correctement codée serait: If quelque chose = quelque chose Alors faites ce dont vous avez besoin faitAutre faire quelque chose d'autreEnd IfVous pouvez utiliser n'importe quel argument tant qu'il est vrai, il suivra la partie then et ignorera la partie else mais s'il est faux, il sautera alors et passera à else Ensuite, lorsque nous terminerons l'instruction if nous mettons "end if", mais si nous avons imbriqué des instructions if, nous devons terminer chaque instruction if. Il les terminera de l'enfant au parent, de sorte que le premier "end if" termine l'instruction if à l'intérieur du parent, où le second termine l'instruction if d'origine (parent). nous voulons dire dans le message ") pour y ajouter une valeur de variable, nous la mettons à l'extérieur ou entre des guillemets doubles en utilisant le signe esperluette (&) comme délimiteur afin que le script sache qu'il s'agit d'une variable et non d'un texte.:Wscript. Echo ("Blah blah blah" & strDir & " blah blah blah "& strFilename & " blah blah blah.") La sortie serait une fenêtre contextuelle disant Blah blah blah C:\Catcher blah blah blah shutdown_catcher.txt blah blah blah. Actual Usage:'if the folder C;\exist If objFiSyOb. FolderExists(strDir) Then'get folder Set objSysFold = objFiSyOb. GetFolder(strDir)'otherwiseElse'create the folder c;\catcher Set objSysFold = objFi CreateFolder(strDir)'et vérifiez si le fichier et le dossier existent Si objFiSyOb. FileExists(strDir & strFile) Then'si il obtient le dossier c:\catcher Set ob jSysFold = objFiSyOb. GetFolder(strDir)'otherwiseElse'create document texte shutdown_catcher.txt Set objFile = objFiSyOb. CreateTextFile(strDir & strFile)'puis faire apparaître un message pour dire que vous les avez créés tous les deux Wscript. Echo ("Nous avons créé un dossier nommé " & strDir & " et un fichier nommé " & strFilename & " et l'a placé dans le répertoire " & strDir & strFile & ".")'end imbriqué if statementEnd If'end original if statementEnd If'now dans la première instruction if nous avons déjà vérifié le dossier et l'avons trouvé, alors maintenant nous vérifions fileIf objFiSyOb. FileExists(strDir & strFile) Then'if found get folder Set objSysFold = objFiSyOb. GetFolder(strDir)'otherwise Else'create the text doc Set objFile = objFiSyOb. CreateTextFile(strDir & strFile)'crée une fenêtre contextuelle indiquant que nous avons créé le document texte Wscript. Echo ("Nous avons créé un fichier nommé " & strFileName & " dans le dossier " & strDir & " file. ") Fin si

Étape 6: Explications entre les deux

Explications dans Entre
Explications dans Entre

Si vous regardez attentivement le code de l'étape précédente, vous verrez à la fois une instruction if then imbriquée et non imbriquée. La première est une instruction imbriquée. Il recherche le dossier et le fichier et s'il ne les trouve pas, il crée les deux. La seconde recherche uniquement un fichier et s'il ne le trouve pas, il crée uniquement le fichier. On pourrait dire pourquoi les deux. Eh bien, que se passe-t-il si le fichier est supprimé mais pas le dossier. La première instruction if sauterait directement sur la création du fichier car elle trouvait le dossier et n'actionnerait jamais la partie else de l'instruction. Ainsi, lorsque vous écriviez dans le fichier, une erreur se produisait car le fichier serait manquant. Donc, en ayant le deuxième là, cela résout ce problème. Techniquement, vous pouvez supprimer l'instruction imbriquée car elle est presque la même que la seconde instruction if then, mais vous n'auriez alors qu'une seule fenêtre contextuelle et ce ne serait pas aussi personnalisable. -imbriqué si les instructions.

Étape 7: Plus de correction d'erreur

Plus de correction d'erreur
Plus de correction d'erreur

Maintenant que nous avons terminé la majorité de la correction d'erreurs, nous voulons écrire dans le fichier et afficher les fenêtres contextuelles. Le problème est que nous obtiendrons des erreurs d'autorisation si nous ne libérons pas la référence de l'objet précédent stocké dans la variable. Nous voulons donc mettre un petit extrait de code qui dit de définir les variables sur rien. Cela ressemble à ceci: set objFile = Nothingset objSysFold = NothingDonc pour ceux d'entre vous qui suivent à la maison, votre code à ce stade devrait être (j'ai pris le commentaire out):Option ExplicitDim objFiSyOb, objSysFold, objShell, objFile, objTextFileDim strDir, strFile, strFileNamestrDir = "C:\Catcher"strFile = "\Shutdown_catcher.txt"strFileName ="Shutdown_catcher.txt = 2,Const forReading ForAppending = 8Set objFiSyOb = CreateObject("Scripting. FileSystemObject")If objFiSyOb. FolderExists(strDir) Then Set objSysFold = objFiSyOb. GetFolder(strDir)Else Set objSysFold = objFiSyObOb. CreateF) Set objSysFold = objFiSyOb. GetFolder(strDir)Else Set objFile = objFiSyOb. CreateTextFile(strDir & strFile) Wscript. Echo ("Nous avons créé un dossier nommé " & strDir & " et un fichier nommé " & strFilename & " et l'avons placé dans le répertoire " & strDir & strFile & ".")Fin I fEnd IfIf objFiSyOb. FileExists(strDir & strFile) Then Set objSysFold = objFiSyOb. GetFolder(strDir)Else Set objFile = objFiSyOb. CreateTextFile(strDir & strFile) Wscript. Echo ("Nous avons créé un fichierName & " " & str " & strDir & "dossier de fichiers.")End Ifset objFile = rienset objSysFold = rien

Étape 8: écriture du script Partie 4: définition des attributs

Écriture du script Partie 4: Définition des attributs
Écriture du script Partie 4: Définition des attributs

Nous devons maintenant définir les attributs du fichier afin de pouvoir le modifier. Auparavant, nous avions défini trois variables constantes: forReading=1forWriting=2 forAppending=8si vous le définissez sur forReading, vous pourrez le lire mais pas y écrire. Si vous le définissez sur forWriting, vous écraserez le fichier existant à chaque fois que vous exécuterez le programme.. Si vous le définissez sur forAppending, vous ajouterez une nouvelle ligne à chaque exécution du script sur le document. Étant donné que nous voulons un journal de chaque redémarrage, nous voulons qu'il soit ajouté et non écrasé, nous utilisons donc forAppending. Comment nous le faisons: vous devez nommer l'objet auquel vous souhaitez attribuer des attributs. Étant donné que nous avons déjà effectué la plupart du travail dans les étapes précédentes, nous avons juste besoin de rappeler les variables à ce stade. Ensuite, définissez-le simplement sur true. Actual Usage:'object to set = filesystemobject.action(directory+name of file, attribute, true or false)Set objTextFile = objFiSyOb. OpenTextFile (strDir & strFile, ForAppending, True)

Étape 9: écriture du script Partie 5: écriture dans un fichier

Écriture du script Partie 5: Écriture dans un fichier
Écriture du script Partie 5: Écriture dans un fichier

L'écriture dans un fichier ressemble beaucoup à l'écriture d'une fenêtre contextuelle. Vous venez de mettre:objTextFile. WriteLine("Tout ce que vous voulez dire " & Variable à extraire pour écrire la ligne) La seule différence est la première partie. Dans une fenêtre contextuelle, vous mettez:Wscript.echoin une ligne d'écriture que vous mettez:objTextFile. WriteLineEt dans une ligne d'écriture, vous devez fermer la ligne d'écriture pour qu'elle sache arrêter d'écrire et pour cela, vous utilisez:objTextFile. CloseActual Usage:objTextFile. WriteLine("Votre ordinateur s'éteint le " & date & " à " & heure) objTextFile.close'ajoutez maintenant une fenêtre contextuelle pour dire que vous avez écrit dans le fichier afin que la personne sache que cela s'est passé'et elle doit le fermer pour ouvrir le fichier et afficherWscript. Echo ("Votre ordinateur s'éteint le " & date & " à " & temps)

Étape 10: écriture du script Partie 5: ouverture du fichier pour l'affichage

Écriture du script Partie 5: Ouverture du fichier pour l'affichage
Écriture du script Partie 5: Ouverture du fichier pour l'affichage

Le script s'arrêtera à ce stade jusqu'à ce que quelqu'un clique sur la fenêtre contextuelle. Une fois que vous avez dépassé la fenêtre contextuelle, vous pouvez insérer une ligne qui ouvre le fichier. L'utilisation d'une correction d'erreurs aide à maintenir le programme en bon état de fonctionnement. Lorsque vous créez une erreur dans vbscript, cela ajoute une valeur à la variable "err.number" qui est une variable prédéfinie dans vbscript. Vous n'êtes pas obligé de la définir et pouvez l'utiliser comme n'importe quelle autre variable tant que vous ne violez pas ses règles. La valeur affectée à la variable err.number est le code de l'erreur qui s'est produite. Maintenant, vous pouvez soit vérifier chaque code d'erreur connu dans la base de données vbscript et vous assurer qu'il ne s'est pas produit. Ou plus simple, il suffit de vérifier que la variable err.number est vide. s'il est vide, aucune erreur ne s'est produite. Pour ce faire, nous vérifions simplement si la variable est égale à vbEmpty. Donc, dans notre script, nous voulons utiliser une autre instruction if then. Et vérifiez si une erreur s'est produite et s'il n'a pas ouvert le fichier pour l'affichage, mais si c'est le cas, un message s'affiche avec le numéro d'erreur afin que nous puissions déboguer. Ensuite, lorsque nous avons tous terminé avec notre script, nous tapez Wscript. Quitter. Cela indique au script de se terminer. Cela permet de réduire les fuites de mémoire et les processus indésirables en cours d'exécution. Comment est-il utilisé: si err.number est égal à vbEmpty, créez un shell, puis exécutez le programme à partir du shell, sinon un message indiquant qu'il y a eu une erreur et si. erreursSi err.number = vbEmpty then'if none create a shell Set objShell = CreateObject("WScript. Shell")'puis ouvrez le fichier à partir de ce shell à l'aide de l'explorateur. il s'ouvrira en fait dans IE bien que objShell.run ("Explorer" &" " & strDir & "\shutdown_catcher.txt")'sinon afficher un message avec le numéro d'erreurElse WScript.echo "VBScript Error: " & err.numberEnd If 'end scriptWscript.quit

Étape 11: Exécuter le script au démarrage

Exécuter le script au démarrage
Exécuter le script au démarrage

Il y a un dossier de fichiers dans le menu Démarrer appelé Démarrage. Tout ce qui est placé dans ce dossier démarrera dès le démarrage de l'ordinateur. En plaçant le fichier de script dans le dossier de démarrage, il s'exécutera à chaque redémarrage de l'ordinateur, que ce soit intentionnel ou non. Étant donné que je ne l'utilise que comme outil de diagnostic, il n'a pas besoin d'être transformé en service pour démarrer, et je n'ai pas besoin de le mettre dans le registre pour le démarrer, donc tout ira bien. Une fois que j'ai réparé l'ordinateur, je peux supprimer le fichier du dossier de démarrage et aucun autre nettoyage n'est requis.

Étape 12: Exécuter le programme

Exécution du programme
Exécution du programme
Exécution du programme
Exécution du programme
Exécution du programme
Exécution du programme

Lorsque vous exécutez le fichier vbscript, il va maintenant A.) Vérifiez si le dossier C:\Catcher existe et sinon créez-le. B:) Vérifiez si le fichier Shutdown_catcher.txt existe et sinon créez-le. C:) S'il a créé un dossier ou un fichier ou les deux, un message s'affichera indiquant qu'il les a créés (Remarque: il ne devrait le faire qu'à la première exécution, après quoi il devrait déjà être là à moins qu'il ne soit supprimé, vous ne devriez donc voir ce message qu'une seule fois. Il peut être judicieux d'exécuter ce script une fois sous un redémarrage contrôlé afin de pouvoir contourner ces fenêtres contextuelles ou de ne rien écrire dans le fichier car il ne contournera pas les fenêtres contextuelles créées par le fichier.)D:) Écrivez une ligne dans le document texte Shutdown_Catcher.txt disant que l'ordinateur s'éteint à telle date à telle heure. E:) Affiche un message disant qu'il y a eu un redémarrageF:) Ouvrez le fichier pour le visionner. vous verrez le code tel qu'il est écrit. Maintenant, tout ce que j'ai à faire est de m'asseoir et d'attendre. Chaque fois que l'ordinateur redémarre, j'en ai une trace. Ensuite, je peux examiner le dossier et voir s'il est cohérent. L'exemple peut être qu'il redémarre toutes les demi-heures ou qu'il redémarre à chaque fois qu'il y a un incrément ou 45 sur l'horloge. Ce n'est en aucun cas la seule façon dont je vérifie sur l'ordinateur, juste pour que vous le sachiez. J'ai également un programme d'analyse comparative en cours d'exécution pour vérifier les températures afin que je sache à quel point il fait chaud lorsqu'il s'éteint, la tension pour savoir si l'alimentation est défaillante et quelques autres choses utiles. Eh bien, j'espère que cela a été utile. Je sais que j'aime ça alors peut-être que d'autres l'aimeront aussi. Si vous avez des questions, n'hésitez pas à les poser. Je n'y arriverai peut-être pas tout de suite mais d'ici peu et je vous répondrai. Tout dépend de comment se passe ma journée/semaine.

Étape 13: Le code

Le code
Le code

Ceci est le code tel qu'il est écrit sans tous les conseils et remarques_Option ExplicitDim objFiSyOb, objSysFold, objShell, objFile, objTextFileDim strDir, strFile, strFileNamestrDir = "C:\Catcher"strFile = "\Shutdowntxt_catcher.txt"strFileName ="Shut Const forReading=1, forWriting = 2, ForAppending = 8Set objFiSyOb = CreateObject("Scripting. FileSystemObject")If objFiSyOb. FolderExists(strDir) Then Set objSysFold = objFiSyOb. GetFolder(strDir)Else Set objSysFold) objFiSyOb. FileExists(strDir & strFile) Then Set objSysFold = objFiSyOb. GetFolder(strDir)Else Set objFile = objFiSyOb. CreateTextFile(strDir & strFile) Wscript. Echo ("Nous avons créé un dossier nommé " & strDir & " et un "& strFilename & " et l'a placé dans le répertoire " & strDir & strFile & ".")End IfEnd IfIf objFiSyOb. FileExists(strDir & strFile) Then Set objSysFold = objFiSyOb. GetFolder(strDir)Else Set objFile = objFiSysFold(Cre strDir & strFile) Wscript. Echo ("Nous avons créé un fichier nommé " & strFileName & " dans le dossier " & strDir & "file folder.")End Ifset objFile = Nothingset objSysFold = NothingSet objTextFile = objFiSyOb. OpenTextFile (strDir & strFile, ForAppending, True)objTextFile. WriteLine("Votre ordinateur Arrêtez le " & date & " à " & heure)objTextFile. CloseWscript. Echo ("Votre ordinateur s'éteint le " & date & " à " & heure) Si err.number = vbEmpty then Set objShell = CreateObject ("WScript. Shell") objShell.run ("Explorateur" &" " & strDir & "\shutdown_catcher.txt")Else WScript.echo "Erreur VBScript: " & err.numberEnd IfWScript. Quit

Conseillé: