示例#1
0
 static void Main()
 {
     NetAclChecker.AddAddress("http://*:80/");
     Application.EnableVisualStyles();
     Application.SetCompatibleTextRenderingDefault(false);
     Application.Run(new Form1());
 }
示例#2
0
        public void Start()
        {
            try
            {
                Logger.WriteDebug(MethodBase.GetCurrentMethod(), "Starting");
                var stopWatch = new Stopwatch();
                stopWatch.Start();

                IsRunning = false;

                if (_decoderPort <= 0 || _decoderPort >= 65535)
                {
                    Logger.WriteDebug($"{_decoderName}: Wrong setting -> decoderPort");
                    Disconnected.RaiseEvent(this, null);
                    return;
                }

                //Raise event
                Connecting.RaiseEvent(this, null);

                if (TryStartListener() == false)
                {
                    Logger.WriteDebug($"{_decoderName}: try to make url reservation");
                    NetAclChecker.AddAddress($"http://+:{_decoderPort}/");

                    if (TryStartListener() == false)
                    {
                        Logger.WriteDebug($"{_decoderName}: unable to start listener");
                        return;
                    }
                }

                //Raise event
                Connected.RaiseEvent(this, null);

                IsRunning = true;

                stopWatch.Stop();
                Logger.WriteDebug(MethodBase.GetCurrentMethod(), $"Started -> {stopWatch.Elapsed}");
            }
            catch (Exception ex)
            {
                Logger.WriteDebug($"{_decoderName}: {ex} -> {ex.Message}");
            }
        }