Potřeboval bych udělat status serveru. Když server běží aby to svítilo zeleně a když nebeží červeně.... Ale ne vim jak udělat to aby mě to zjistilo jestli IP běží nb neběží
Fórum › .NET
Status serveru
Zdar, co přesně myslíš tím server ... celej comp nebo jen aplikaci? V tom případě jakou?
To murle: jestli ti jde jen o pc, tak http://msdn2.microsoft.com/en-us/library/system.net.networkinformation.ping.aspx
To mephi: No praveye pingnout to muyu i kdzy server nebezi .... Zapomel sem to uvest na zpravnou miru... nejde o server jako takovej, ale o Serverovou aplikaci respektive jde o Emulator hry World of Warcraft... potrebuji zjistit jestli server bezi nb ne ( ta aplikace ).
Já sem tohle (shodou okolností taky WoW server) řešil v pythonu. Je to sice asi dost neohrabaný ale v bloku try sem dal otevřít socket na server a při chybě vypsat že nejede, pak minutu (5min, hodinu...) sleep a pak znova. Možná ti to pomůže, ale nevim jak jsou v .NET řešené sockety, takže ti přímo nepomůžu.
Asi nejlepší to bude normálně přes TCP/IP, ten server určitě komunikuje na nějakým portu, ale nevim, musel bych znát víc podrobností a zkusit to.
while(list($ServerName,$Host)=each($IP))
{
list($IPAddress,$Port)=explode(":",$Host);
if($fp=fsockopen($IPAddress,$Port,$ERROR_NO,$ERROR_STR,(float)0.5))
todle je asi nejak reseni v PHP co sem nasel... ale jak je videt neni to cele :(
vypada to na reseni od Dealera vysvetleni fce: http://cz.php.net/manual/cs/function.fsockopen.php - niciuje proudové spojení
Ale jak to udelat v C# netusim :(
Všechno potřebný najdeš v protoru System.Net, případně přímo System.Net.Sockets. Tady jsou nějaký články, co se tomu věnujou: http://www.devarticles.com/c/a/C-Sharp/Socket-Programming-in-C-Part-I/1/, http://www.devarticles.com/c/a/C-Sharp/Socket-Programming-in-C-sharp-Part-II/1/.
proste zistíš ip serveru, a port cez ktorý prijíma/odosiela dáta....
napríklad CS 27015, wow 3724
ďalej potom:
from socket import *
host = "http://nakyserver.sk"
port = 27015
addr = (host,port)
UDPSock = socket(AF_INET,SOCK_DGRAM)
try:
UDPSock.bind(addr)
print "server ok"
except: print "server down"
niečo v tomto zmysle, nejaký loop a time.sleep(), nezabudni pred ďalším pripojením socket.close() (!)
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
Status generator — založil gledy
Status bar — založil RG-Bot
Online Status — založil Milan
"Messenger" - status — založil Rat
Server status — založil lolik
Moderátoři diskuze