[Recherche de prog]

Répondre
Partager Rechercher
Voila, bonjour a tous !

Je recherche un programme style nwn rat qui puisse permettre à mes dms de relancerl e serveur quand il plante et que je suis pas dispo mais qui gere les serveurs 96 joueurs et le niveau 40 max ^^

J'ai eu beau fouiner le vault, j'ai rien trouvé, et il y a plus de progs linux que windows, j'ai donc besoin d'un prog sous windows, si quelqu'un a une info ^^

Voila, merci de vos réponses
A ma connaissance il n'y en a pas. le seul moyen est de passer via une interface web en utilisant php et wmi. Il te faut donc sur ton serveur php (easyphp fait l'affaire). et le support de WMI (activation du service qui va bien, d'ailleurs activé par défaut sous win 2k serveur & win 2003 server).
Bien je vais essayer de faire simple, sans bases de données, ni authentification. Juste pour que tu pige la procédure.

tu installes PHP sur le serveur sur-lequel est installé ton module., tu crée une page avec deux boutons :

- Arrêter le serveur
- Démarrer le serveur

Code PHP:

<html>
<
head>
<
title>nwn rebooteur</title>
</
head>
<
body>

<
form action="stop.php" method="post" name="stop" target="_blank">
<
input name="Arrêter" type="submit" value="stop">
</
form>

<
form action="start.php" method="post" name="start" target="_blank">
<
input name="Démarrer" type="submit" value="start">
</
form>

</
body>
</
html
Si tu clic sur stop, stop.php est lancé :

Code PHP:

<?php
$bat 
=  "./stop.vbs";
$reponse system("cmd /C $bat");
echo 
"Action exécutée avec succés";
?>
Si tu clic sur start, start.php est lancé :

Code PHP:

<?php
$bat 
=  "./start.vbs";
$reponse system("cmd /C $bat");
echo 
"Action exécutée avec succés";
?>
stop.php execute le fichier stop.vbs qui contient le code WMI pour arrêter le serveur :

Code PHP:

strComputer "."
Set objWMIService GetObject("winmgmts:" _
    
"{impersonationLevel=impersonate}!\\" _
    
strComputer "\root\cimv2")
Set colProcessList objWMIService.ExecQuery _
    
("Select * from Win32_Process Where Name = 'nwnserv.exe'")
For 
Each objProcess in colProcessList
    objProcess
.Terminate()
Next 
start.php execute le fichier start.vbs qui contient le code WMI pour lancer le serveur :

Code PHP:

Const HIDDEN_WINDOW 12
strComputer 
"."
Set objWMIService GetObject("winmgmts:" _
    
"{impersonationLevel=impersonate}!\\" _
    
strComputer "\root\cimv2")
Set objStartup objWMIService.Get("Win32_ProcessStartup")
Set objConfig objStartup.SpawnInstance_
Set objProcess 
GetObject_
    
"winmgmts:root\cimv2:Win32_Process")
errReturn objProcess.Create_
    
"C:\ONLINE\nwnserv.exe -module tonmod""C:\ONLINE\", objConfig, intProcessID) 

Voilà c'est pas plus compliqué que ça si ce n'est qu'ici il n'y a pas de notion d'utilisateurs, de restrictions quelconques, la sécurité est inexistante.

L''utilisation d'une base de données est donc vivement recommandée pour y inscrire quelques variables pour éviter entre autre les doublons.

Enjoy
Répondre

Connectés sur ce fil

 
1 connecté (0 membre et 1 invité) Afficher la liste détaillée des connectés