IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBScript Discussion :

script éteindre l'ordinateur


Sujet :

VBScript

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 18
    Points : 17
    Points
    17
    Par défaut script éteindre l'ordinateur
    Bonjour, je voudrait savoir si il existe un script capable d'éteindre l'ordinateur, j'ai cherché mais n'ai pas trouvé.

  2. #2
    Membre averti
    Inscrit en
    Août 2007
    Messages
    302
    Détails du profil
    Informations personnelles :
    Âge : 57

    Informations forums :
    Inscription : Août 2007
    Messages : 302
    Points : 341
    Points
    341
    Par défaut
    Salut,

    passe par une commande Dos :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Set w=CreateObject("WScript.Shell")
    go=w.run("cmd.exe /c shutdown -f", 0, true)
    A++
    Plus tu pédales moins vite, moins t'avances plus vite.

  3. #3
    Membre régulier Avatar de imparator_42
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2007
    Messages
    242
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2007
    Messages : 242
    Points : 122
    Points
    122
    Par défaut
    je taide un peu

    voici les commande de "shutdown" que tu peux utiliser si jamais ça tinteresse....

    -------------------------------------------------------------------
    Utilisation : shutdown [-i | -l | -s | -r | -a] [-f] [-m \\nom_ordinateur] [-t xx] [-c "commentaire"] [-d up: xx:yy]

    Sansargument Affiche ce message (identique à -?)
    -i Affiche l'interface graphique, doit être la 1ère option
    -l Ferme la session (ne peut pas être utilisé avecl'option -m)
    -s Met l'ordinateur hors tension
    -r Met l'ordinateur hors tension et le redémarre
    -a Annule une mise hors tension système
    -m\\nom_ordinateur Ordinateur distant à mettrehors tension/redémarrer/annuler
    -txx Définir le délai d'expiration pour la mise hors tension à xx secondes
    -c"commentaire" Commentaire de la mise hors tension (maximum de 127 caractères)
    -f Force des applications en cours d'exécution à se fermer sansavertissement
    -d[u][p]: xx:yy Le code deraison de la mise hors tension
    u est le code utilisateur
    p est un code de mise hors tension planifié
    xx est le code de raison majeur (valeur entière inférieure à 256)
    yy est le code de raison mineur (valeur entièrepositive inférieure à65536)
    ----------------------------------------------------------------

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 18
    Points : 17
    Points
    17
    Par défaut
    Merci beaucoup vous deux.
    Juste une dernière chose:
    Est-ce que quelqu'un peut m'expliquer à quoi sert "set"? J'ai lu le FAQ sur FSO mais je n'ai pas compris grand chose( je ne suis pas informaticien mais en 2nd)

  5. #5
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Alors pour faire simple, Set est à utiliser lorsque ta variable doit contenir un objet.

    En fait cela permet de signaler que ta variable est une référence sur un objet précis. Ce qui veut dire que si tu référence plusieurs variable sur le même objet, tu n'auras qu'un seul objet, mais plusieurs variable pour y accéder.

    Si tu connais le C ou le C++, c'est la notion de pointeur.
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 18
    Points : 17
    Points
    17
    Par défaut
    Je n'ai pas super bien compris mais ce n'est pas grave je sais quand même y utiliser pour ce que je fais.
    Merci quand même.

  7. #7
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Une variable en vbs est de type variant.
    Le type de la variable est déterminé lors de son initialisation avec une valeur.
    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    'toto est variant
    Dim toto
     
    'toto est un entier
    toto = 4
    Donc un variant peut contenir tout type de donnée.
    En programmation objet, il y a ce que l'on appelle des classes.
    Ce sont en fait des structures qui en plus de contenir des variables, contiennent des méthodes que l'on peut leur appliquer.
    Les Classes sont héritables sauf en vbs qui ne permet pas l'héritage.

    Lorsque l'on décide d'utiliser cette structure particulière, classe, il est nécessaire de l'instancier, c'est à dire donner un nom à l'instance et donnée des valeurs à ses variables.
    Cette instance n'est accessible que si on lui affecte une variable qui la référence.
    Et c'est à cela que sert le set :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
     
    main
     
    Sub main()
       'Variable qui va référencer la classe toto
       Dim titi
     
       'Création d'une instance de toto et affectation de celle-ci à titi
       Set titi = New toto
     
       'On utilise la méthode Set pour donner une valeur à toto
       titi.SetToto(4)
     
       'On affiche ce que retourne Get
       msgbox titi.GetToto
     
       'On utilise la méthode maMethode
       titi.MaMethode
    End Sub
     
     
     
     
    Class toto
       'Variable toto avec un accesseur public.
       'l'accesseur détermine la portée d'une variable.
       'Public ou Private.
       'Public = accessible par n'importe qui en dehors de la classe.
       'Private = accessibler uniquement par les méthodes de la classes.
       Private toto
     
       'Fonction permettant d'obtenir la valeur de toto
       Function GetToto()
          GetToto = toto
       End Function
     
       'Fonction permettant de modifier la valeur de toto
       Function SetToto(valeur)
          toto = valeur
       End Function
     
       'Focntion qui affiche toto + 1 (je sais ce commentaire ne sert à rien)
       Function MaMethode ()
          Msgbox toto + 1
       End Function
    End Class
    Donc Set sert à affecter à une variable un objet (nom donné à une instance de classe)

    Un objet peut contenir en son sein des instances d'autre objet, donc lorsque l'on affecte à une variable le contenu de la variable d'un objet (on dit argument d'une classe) si cette argument référence un objet alors il faut utiliser set.

    Dans mon exemple précédent, on va affecter le contenu de titi à tata une nouvelle variable. Pour le faire on doit utiliser Set car titi référence un objet, et donc tata référencera le même objet.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim tata
    set tata = titi
    Attention tu ne dupliques pas l'objet, tata et titi référence le même objet et donc si tu fais :
    Alors :
    cela t'afficheras 6

    J'espère que tu as compris cette fois
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 18
    Points : 17
    Points
    17
    Par défaut
    ok merci j'ai compris(après 4 ou 5 relectures mais j'ai compris^^)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [C#] Comment éteindre l'ordinateur par programmation ?
    Par hobotalker dans le forum Windows Forms
    Réponses: 10
    Dernier message: 10/04/2018, 13h25
  2. commande pour fermer la session ou éteindre l'ordinateur
    Par andremiv dans le forum Windows 7
    Réponses: 4
    Dernier message: 26/11/2012, 16h57
  3. Comment éteindre l'ordinateur en Assembleur avec l'ACPI
    Par Euquigam dans le forum Programmation d'OS
    Réponses: 5
    Dernier message: 05/03/2011, 19h08
  4. éteindre son ordinateur
    Par malikoo dans le forum C++Builder
    Réponses: 1
    Dernier message: 06/12/2005, 00h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo