Esempio n. 1
0
 /// <summary>
 /// HostStart irá ligar o servidor HTTP em um IP e Porta definido na sua rede local.
 /// </summary>
 public void HostStart(int Port, string IP)
 {
     IP = IPAddress.Parse(IP).ToString();
     if (listener.IsListening)
     {
         CWrite("O servidor já está ligado!");
     }
     else
     {
         try {
             CWrite("Iniciando servidor...");
             tStatus = (int)StatusServer.ServerLoading;
             ChangeStatusServer?.Invoke((StatusServer)tStatus);
             listener.Prefixes.Add("http://" + IP + ":" + Port + "/");
             listener.Start();
             CWrite("Servidor iniciado com sucesso em: http://" + IP + ":" + Port + "/");
             tStatus = (int)StatusServer.ServerOn;
             ChangeStatusServer?.Invoke((StatusServer)tStatus);
             int arglocation = 0;
             listener.BeginGetContext(RequestHandler, Interlocked.Increment(ref arglocation));
         } catch (UnauthorizedAccessException ex) {
             CWrite("Erro: " + ex.ToString());
         }
     }
     LockConsole();
 }
Esempio n. 2
0
 /// <summary>
 /// HostStop irá desligar o servidor HTTP, porém comando só irá funcionar se o servidor estiver inicializado por completo.
 /// </summary>
 public void HostStop()
 {
     if (listener.IsListening)
     {
         CWrite("Parando servidor...");
         tStatus = (int)StatusServer.ServerLoading;
         ChangeStatusServer?.Invoke((StatusServer)tStatus);
         listener.Stop();
         listener.Abort();
         CWrite("Servidor desligado com sucesso!");
         tStatus = (int)StatusServer.ServerOff;
         ChangeStatusServer?.Invoke((StatusServer)tStatus);
     }
     else
     {
         CWrite("O servidor já está parado!");
     }
 }