Exemplo n.º 1
0
        public void Listen()
        {
            HttpListener listener = new HttpListener();

            listener.Prefixes.Add(string.Format("http://*:{0}/", settings.ManagerPort));
            listener.Start();



            //srv1.serverData.Schedules.ServerEvents.Add(new ScheduledEvent("Test Event", DateTime.Now, EventType.START, ScheduleType.Interval, 10));
            //srv1.serverData.Schedules.ServerEvents.Add(new ScheduledEvent("Test Event2", DateTime.Now.AddSeconds(5), EventType.START, ScheduleType.Once));

            while (true)
            {
                HttpListenerContext context = listener.GetContext();

                HttpListenerRequest  request  = context.Request;
                HttpListenerResponse response = context.Response;

                StreamReader r = new StreamReader(request.InputStream);

                string val = r.ReadToEnd();
                r.Close();

                Console.WriteLine(val);
                string responseString = HandleRequest(val);

                var responseData = Encoding.ASCII.GetBytes(responseString);


                response.ContentLength64 = responseData.Length;
                response.Headers.Add("Access-Control-Allow-Origin", "*");
                response.Headers.Add("Access-Control-Allow-Methods", "POST, GET");
                response.ContentEncoding = Encoding.UTF8;


                Stream outputStream = response.OutputStream;
                outputStream.Write(responseData, 0, responseData.Length);
                outputStream.Close();
                Arma3ServerUtility.SaveServerList();
            }
        }
Exemplo n.º 2
0
        public static void Main(string[] args)
        {
            bool isElevated;

            using (WindowsIdentity identity = WindowsIdentity.GetCurrent())
            {
                WindowsPrincipal principal = new WindowsPrincipal(identity);
                isElevated = principal.IsInRole(WindowsBuiltInRole.Administrator);
            }

            if (!isElevated)
            {
                MessageBox.Show("Admin permissions required.", "No Privileges");
                Environment.Exit(0);
            }


            Arma3ServerUtility.LoadServerList();

            HttpServer s = new HttpServer(SettingsManager.LoadSettings());

            s.Listen();
        }