Exemplo n.º 1
0
        protected override void OnStart(string[] args)
        {
            _logging = new SystemEventLogging();
            _logging.WriteInformation("Система запущена");
            try
            {
                CheckLicense();

                _watchdog = new Thread(watchdogProc);
                _watchdog.Start();

                //System.Diagnostics.Debugger.Break();
                if (ServiceHandle != IntPtr.Zero) RequestAdditionalTime(1000 * 60 * 15);

                _loader = new ModuleLoader(_logging);
                KnownTypeProvider.ModuleList = _loader.ModuleList.ToArray();
                _config = new ServerConfiguration(_loader, _logging);
                _loginService = new LoginService(_config);
                _lockService = new LockingService(_loginService.FindSystemIdentity(), _config.EventLog);
                _worker = new PresentationWorker(_config, _lockService);

                _administrationService = new AdministrationService(_config, _loginService, _worker);

                _designService = new DesignerService(_config, _worker, _loginService, _administrationService);
                _showService = new ShowService(_config, _worker, _loginService.FindSystemIdentity());


                _designerHost = new ServiceHost(_designService);
                _showHost = new ServiceHost(_showService);
                _administrationHost = new ServiceHost(_administrationService);

                _designerHost.Open();
                _showHost.Open();
                _administrationHost.Open();
            }
            catch (Exception ex)
            {
                _logging.WriteError(ex.ToString());
                throw;
            }
        }
 public StandAlonePresentationWorker(ISourceDAL sourceDAL, IDeviceSourceDAL deviceSourceDAL,
     IConfiguration configuration, IPresentationNotifier notifier)
 {
     _configuration = configuration;
     _sourceDAL = sourceDAL;
     _deviceSourceDAL = deviceSourceDAL;
     _lockService = new LockingService(new TechnicalServices.Entity.UserIdentity(UserInfo.Empty, true, TimeSpan.MinValue, "localhost"), _configuration.EventLog);
     _presentationDAL = new StandAlonePresentationDAL(configuration);    //PresentationDAL
     _presentationDAL.Init(_sourceDAL, _deviceSourceDAL);
     _notifier = notifier;
     Init();
 }