begin process at 2012 05 28 08:32:29
  Trouver un code source :
 
dans
 
Accueil > Forum > 

ASP.NET

 > 

Système

 > 

Autre

 > 

reboot du systeme


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

reboot du systeme

mercredi 31 mai 2006 à 15:45:51 | reboot du systeme

fcampagne

Salut a tous
Je souhaiterais pouvoir redémarrer une machine a distance par l'intermédiaire du page asp en cliquant sur un bouton
J'ai donc réaliser ma fonction utlisant WMI

Function reboot() As Integer
        Dim objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate,(Shutdown)}!\\" & ma_machine & "\root\cimv2")
        Dim colOperatingSystems = objWMIService.ExecQuery("Select * from Win32_OperatingSystem")
        Dim objOperatingSystem
        For Each objOperatingSystem In colOperatingSystems
            Return objOperatingSystem.Reboot()
        Next
    End Function

La fonction me retourne bien le code 0 qui correspond a la réussite du reboot mais la machine ne redémarre pas!

Je souhaiterais également afficher une alert box pour confirmer le choix de l'utilisateur pour redémarrer une machine, j'arrive bien a afficher l'alert mais je n'arrive pas a récupérer le choix de l'utilisateur ( soit click ok ou click annulé)
auriez vous une idée??

    Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
        Response.Write("<body><script>confirm('Êtes-vous sûr de vouloir redémarrer la machine " & ma_machine & " ?');</script></body>")
'comment bloquer ici si l'utilisateur a cliqué sur annulé???
        Response.Write(reboot())
    End Sub



mercredi 31 mai 2006 à 16:16:55 | Re : reboot du systeme

Coolpix08

si cest vraiment le code que tu utilise, perso je vois pas trop apart que response.write écrit directement le code html en sortie et dapres ce que je peut voir le premier Write ferme la balise script et body.
Faudrait peut etre que tu ecrive le code complet pour demander la confirmation ET mettre le code au niveau client pour faire rebooter la machine DANS la balise  script.

<body>
<script>
 // code pour demander la confirmation
//Si oui
    //  code pour faire rebooter la machine
// Sinon
    // autre
</script>
</body>

sans oublier bien sur que Write prend un "String"

Enfin ce n'est que mon avis en espérant que ca puisse t'aider....

mercredi 31 mai 2006 à 16:24:48 | Re : reboot du systeme

fcampagne

Merci pour ton avis, en premier lieu je voudrais me concentré sur le reboot
La méthode que j'emploi utilise une requéte WQL pour WMI, de cette maniére j'arrive a arréter ou démarrer un service, mais la je bloque sur la méthode qui permet de rebooter, j'ai calquer cette méthode sur celles que j'ai déja utilisé et qui marche mais celle ci me dit que le reboot c'est bien passé( code de retour 0) mais en réalité le pc ne redémarra pas du tout!
Je m'interroge donc sur le pourquoi, qu'est qui fait que ca ne marche pas?
mercredi 31 mai 2006 à 19:40:27 | Re : reboot du systeme

Coolpix08

Ouah...
La je tavoue que ya un truc qui m'échappe completement...
je suppose vu la syntaxe que tu es en ASP.NET donc il y a une partie client et une partie serveur.
Donc deja pour ta remark :
 'comment bloquer ici si l'utilisateur a cliqué sur annulé???

Ben tu peux pas...faut bien faire la difference entre le code executer coté client et celui coté serveur.
au moment du response ( coté serveur ) la page POUR le client est entrain de se former mais elle n'est pas encore envoyer.
Elle le sera qu'à la fin de la fonction en cours.

Tu n'a qu'à mettre sur ta page 2 bouton 'confirmer' 'annuler' et sur evenement clik de l'un ou lautre tu fait le traitement.
Parce que la en cliquant sur le bouton,la confirmation va se faire sur le prochain raffraichissement.
Du coup tu va avoir l'alert mais le reboot sera deja executé -> car c'est du code executer coté serveur AVANT le retour de la page.

Pour ton reboot...si vraiment ta methode est fiable et que tu es sur que ca vient pas de ca...ben regarde si ta les droits sur les autres machines...la je connais pas trop le code...mais je voit pas le rapport avec le reste du code.
A moins que ta question ne portait vraiment QUE sur le code du reboot. Ben la je passe mon tour

jeudi 1 juin 2006 à 13:39:08 | Re : reboot du systeme

fcampagne

Réponse acceptée !
Bon pour le reboot c ok j'ai enfin trouvé

voila le code pour ce que ca intérésse

    Function reboot(byval ipdelamachine as string) As Integer
        Dim resultat As Integer
        Dim oq As ObjectQuery
        Dim query As ManagementObjectSearcher = Nothing
        Dim ms As ManagementScope
        Dim queryCollection As ManagementObjectCollection = Nothing
        Dim MonMO As ManagementObject = Nothing

        ms = New System.Management.ManagementScope("\\" + ipdelamachine + "\root\cimv2")
        oq = New System.Management.ObjectQuery("SELECT * FROM Win32_OperatingSystem")
        query = New ManagementObjectSearcher(ms, oq)
        queryCollection = query.Get()
        For Each MonMO In queryCollection
            resultat = MonMO.InvokeMethod("Reboot", Nothing)
        Next
        Return resultat
    End Function


Cette discussion est classée dans : click, machine, redémarrer, reboot, objoperatingsystem


Répondre à ce message

Sujets en rapport avec ce message

Récupération du nom de machine et du user identifié sur une machine ! [ par Manu ] Je n'arrive pas à récupérer le nom de la machine cliente ni l'identifiant de la personne connectée.Comment faire car les variables serveur ne me renv Pb de reboot sur NT 4 serveur [ par bricks ] Lors de l'edition des propriétées dans la console IIS, de temps en temps la machine reboot toute seul, sans poser aucune question. Je retouve ce probl bouton_click [ par Michèle ] Bonjour.J'ai créé un programme avec visual basic ce programme repose sur une base de données Access.1)Peut-on le convertire sur interdev?2)Dans interd Adresse IP et nom de machine [ par eric ] Comment obtenir à partir d'une adresse Ip obtenir le nom netbios de la machine distante et ceci à partir d'un script (javascript, Vb , delphi ... )Mer AspSmartUpload [ par val ] Peut on avec AspSmartUpload transférer un fichier de son ordinateur vers un server distant ?si oui, à quoi ressemble l'adresse de destination ?http:// Compteur de Click [ par FrancoisPignon ] Comment sauver et afficher le nombre de clicks sur un lien ? Nom Machine CLIENT [ par cfabre22 ] Bonjour,Est-il possible de récupérer le nom de la machine du CLIENT ?Par avance merciPS : Je cherche une solution différente de Request.ServerVariable Event Handler en ASP.Net (VB) [ par ByanSpinder ] Voilà, j'ai un petit problème!J'ai créé un button dynamiquement.Ensuite, je lui ajoute un évènement dynamiquement avec la méthode AddHandler : ce qui routage IP [ par flolepro ] Routage IPSoit sur une machine d?adresse IP 192.134.119.100. Quelle est l?adresse du réseau et l?adresse de la machine ? Soit la table de routage de c Download d'un fichier sur une machine client [ par notoriousFab ] Est-il posible (et si oui, comment :-) ) de downloader un fichier sur une machine cliente.Le repertoire de destination est connu et est toujours le me


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,796 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales