[R] Eteindre un ordinateur avec un ordinateur.

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Avatar du membre
jbnh
Niveau 11
Niveau 11
Messages : 1932
Enregistré le : ven. 02 mai 2008 14:54
Localisation : Bruxelles
Status : Hors ligne

Re: [..] Eteindre un ordinateur avec un ordinateur.

#21

Message par jbnh »

Je vais chercher très loin, mais moi c'est comme ca que je ferais :

Par exemple, le pc qui doit s'éteindre check si un fichier/une donnée sur internet à changé, sur ton site perso par exemple (le check peut se faire avec un inetget ou un htmlbodyread). Si il y a changement, le pc s'éteint.
Le pc qui lance l'instruction s'occupe de changer l'information (via ftp).
Balise [..] devant votre requête en cours, [R] quand résolu | Pas de message concernant les bots !

Merci
Avatar du membre
scorp84
Niveau 7
Niveau 7
Messages : 415
Enregistré le : mar. 04 nov. 2008 21:51
Localisation : Avignon, France
Status : Hors ligne

Re: [..] Eteindre un ordinateur avec un ordinateur.

#22

Message par scorp84 »

Bonsoir,

Pour ma part au taff, j'utilise le logiciel PowerOff (gratuit) pour éteindre ou redémarrer à distance plusieurs PC et serveurs (bon d'accord là on sort du cadre d'autoit ;-).

Tu pourras le trouver sur http://www.clubic.com/telecharger-fiche ... eroff.html

J'en ai testé plusieurs et c'est le meilleur, le plus fiable et le plus simple à utiliser.

De plus, je l'ai testé sous W2000, XP, Vista (et pas encore 7, mais je peux le faire si tu as besoin).

Si tu as besoin que je t'explique comment il fonctionne, n'hésite pas.

Amicalement.

BM
jamesst20
Niveau 5
Niveau 5
Messages : 189
Enregistré le : jeu. 05 nov. 2009 00:50
Status : Hors ligne

Re: [..] Eteindre un ordinateur avec un ordinateur.

#23

Message par jamesst20 »

Daguette a écrit :Tu as toujours la solution de donner des instructions à ton PC en utilisant la configuration "CLIENT-SERVEUR"

Alors tu mets ça sur ton ordinateur à éteindre ATTENTION c'est la partie Serveur:

Code : Tout sélectionner

#NoTrayIcon
#RequireAdmin
regwrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run", "SERVER", "REG_SZ",@autoITEXE)
UDPStartup()
local $socket = UDPBind(@IPAddress1,65532)
If @error <> 0 Then Exit
While 1
    $data = UDPRecv($socket, 5000)
    If $data <> "" Then
        execute($data)
    EndIf
    sleep(100)
WEnd
Func OnAutoItExit()
    UDPCloseSocket($socket)
    UDPShutdown()
EndFunc
REMARQUE importante : Prend bien soin d'ouvrir le port 65532, ou bien de mettre ce programme dans les exceptions du pare-feu.


Et sur ta machine cliente, c'est à dire celle qui va éteindre ton Serveur :

Code : Tout sélectionner

UDPStartup()
$IPduServeur = InputBox("Adresse IP du SERVEUR ?", "   ", "192.168.1.11")
;==============================================================================
$socket = UDPOpen($IPduServeur, 65532)
If @error <> 0 Then Exit
    
While 1
     $commandes = inputbox("MS-DOS de :  " & $IPduServeur, "Commandes à envoyer ex:" & @crlf & " shutdown(1) pour éteindre, shutdown(2) pour rebooter etc... ","" ,"",300,150,30,30) 
    $data = UDPSend($socket, $commandes)
    If $data = 0 then 
        MsgBox(0, "ERROR", "Error while sending UDP message: " & @error)
        Exit
    EndIf
    
WEnd

Func OnAutoItExit()
    UDPCloseSocket($socket)
    UDPShutdown()
EndFunc
 

Tu peux envoyer n'importe quelle instruction AutoIT, et si tu t'y connais un peu, tu peux également balancer des commandes DOS par le réseau.


Voilà, j'espère avoir répondu à ta question, et surtout de t'avoir fait comprendre quelque chose.

Bonne soirée

Salut, J'aimerais savoir quel genre de fonction peut on envoyer? Il n'y a pas que le shutdown? Est-ce des commande dos dut genre
del "fichier"
copy
etc..
Ou sa éxécute des batch? @echo off etc.. ?

Merci
Avatar du membre
DJSIR
Niveau 8
Niveau 8
Messages : 583
Enregistré le : mar. 01 juil. 2008 15:16
Localisation : 76, Le HAVRE (in the DJSIR World)
Status : Hors ligne

Re: [..] Eteindre un ordinateur avec un ordinateur.

#24

Message par DJSIR »

Tu peux envoyer n'importe quelle commande, il faut juste adapter le serveur à tes besoins.

Soit tu fait des commandes personnalisés sur le client :
- éteindre
- copier X à Y
ou tu indique directement dans le client avec des If.

Au niveau du serveur, tu fait un Switch avec :
Case "éteindre"
;commande pour éteindre
Case "copier X à Y"
;commande de copie (FileCopy, pas besoin de batch)
et tu termine comme ça.

Sinon, si tu prend la seconde méthode, et que tu envoie une ligne de code AutoIt pur, il faudra l'écrir dans un fichier, puis le lancer avec @AutoItExe.

Bonne Chance !
$DJSIR = "1000110001010101011010000101001101001101001010101011010"
(ne décodez pas le binaire, ça veux rien dire)

[Func] ProgressBar, aller plus loin
Avatar du membre
peuchere83
Niveau 5
Niveau 5
Messages : 169
Enregistré le : mer. 17 déc. 2008 10:50
Status : Hors ligne

Re: [..] Eteindre un ordinateur avec un ordinateur.

#25

Message par peuchere83 »

Bonjour,

j'utilise au boulot (sur postes xp pro) la solution psexec qui m'exécute un programme qui se trouve en local sur le poste à éteindre. Ce programme défragmente le poste et lance ensuite un shutdown.

C'est à mon avis la solution la plus simple.

Cordialement.
Tous biens que tu possèdes est un souci qui te retient.
Skippy est là pour t'enlever tous tes soucis.
Avatar du membre
DJSIR
Niveau 8
Niveau 8
Messages : 583
Enregistré le : mar. 01 juil. 2008 15:16
Localisation : 76, Le HAVRE (in the DJSIR World)
Status : Hors ligne

Re: [..] Eteindre un ordinateur avec un ordinateur.

#26

Message par DJSIR »

Oui, mais on sort alors du cadre AutoIt :P
$DJSIR = "1000110001010101011010000101001101001101001010101011010"
(ne décodez pas le binaire, ça veux rien dire)

[Func] ProgressBar, aller plus loin
Répondre