private void InitThread()
        {
            pipeThread = new Thread(PipeThread);
            pipeThread.IsBackground = true;
            pipeThread.Start();

            Logger.Instance.LogToService1(this);

            bool settingsIsOk;

            Log("Запуск службы");

            Log(" проверка настроек");

            settingsIsOk = SettingsForm.CheckDirectory();

            if (settings.DSOV == String.Empty)
            {
                Log("  не настроен сертификат органа власти");
                settingsIsOk = false;
            }
            if (settings.DSSP == String.Empty)
            {
                Log("  не настроен сертификат для служебного пользования");
                settingsIsOk = false;
            }

            try
            {
                signer = new Signer();
            }
            catch (Exception e)
            {
                settingsIsOk = false;
                Log("  " + e.Message);
                Log("  Сертификаты должны быть установлены в личное хранилище локального компьютера!");
            }

            // Log("проверка настроек завершена");

            if (!settingsIsOk)
            {
                Log("Служба не будет запущена!");
                Stop();
            }
            else
            {
                Log("Служба запущена успешно");

                signer.SignAllFiles(settings.FolderIn);

                watcher = new FileSystemWatcher(settings.FolderIn, "*.xml");
                watcher.NotifyFilter = NotifyFilters.FileName;
                watcher.Created     += Watcher_CrRn;
                watcher.Renamed     += Watcher_CrRn;

                (new Thread(WatcherThread)).Start();
            }
        }
Exemple #2
0
 private void SignFilesThread()
 {
     signer = new Signer();
     signer.SignAllFiles(Settings.Default.FolderIn);
 }