Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.77/13: Рейтинг темы: голосов - 13, средняя оценка - 4.77
1 / 1 / 2
Регистрация: 25.02.2016
Сообщений: 141
1

Создание службы Windows

16.09.2017, 18:41. Показов 2355. Ответов 10
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день. Есть работающая консоль
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
public class PsiActivityCheck
    {
        public string Date { get; set; }
        public string Time { get; set; }
 
        public PsiActivityCheck() { }
 
        public PsiActivityCheck(string d, string t)
        {
            Date = d;
            Time = t;
        }
    }
 
class Program
    {
        private static Timer aTimer;
        static int i = 0;/*{ get; }*/
 
        static void Main(string[] args)
        {
 
            // Create a timer and set a two second interval.
            aTimer = new System.Timers.Timer();
            aTimer.Interval = 15000;
 
            // Hook up the Elapsed event for the timer. 
            aTimer.Elapsed += OnTimedEvent;
 
            // Have the timer fire repeated events (true is the default)
            aTimer.AutoReset = true;
 
            // Start the timer
            aTimer.Enabled = true;
 
            Console.WriteLine("Press the Enter key to exit the program at any time... ");
            Console.ReadLine();
 
            
        }
 
        private static void OnTimedEvent(Object source, System.Timers.ElapsedEventArgs e)
        {
 
           
            Random rnd = new Random();
 
          
                int randNumber = rnd.Next(0, 333);
            
            Console.WriteLine(e.SignalTime);
 
            if (randNumber % 13 == 0)
                    Console.WriteLine("Ваше число: " + randNumber + ". Надо бить тревогу!!!\n");
 
                else
                    Console.WriteLine("Ваше число: " + randNumber + ". Все хорошо\n");
          
 
            PsiActivityCheck psi = new PsiActivityCheck(DateTime.Now.ToShortDateString(), DateTime.Now.ToLongTimeString());
 
            XmlSerializer formatter = new XmlSerializer(typeof(PsiActivityCheck));
            
            using (FileStream fs = new FileStream("serial" + i++ + ".xml", FileMode.OpenOrCreate))
            {
                formatter.Serialize(fs, /*e.SignalTime.ToString()*/psi);
            }
 
        }
Теперь этот же код нужно поместить в Службу Windows. Чтобы при запуске записывались данные в xml файл.


C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
public partial class Service1 : ServiceBase
    {
        ServiceHost _serviceHost;
        static int i;
        private static Timer aTimer;
 
        public Service1()
        {
            InitializeComponent();
            
        }
 
        protected override void OnStart(string[] args)
        {
 AddActivity();
 
 
            _serviceHost.Open();
 
            
        }
 
        protected override void OnStop()
        {
            //if (_serviceHost != null)
            //    _serviceHost.Close();
        }
 
        public void AddActivity()
        {
            // Create a timer and set a two second interval.
            aTimer = new System.Timers.Timer();
            aTimer.Interval = 15000;
 
            // Hook up the Elapsed event for the timer. 
            aTimer.Elapsed += OnTimedEvent;
 
            // Have the timer fire repeated events (true is the default)
            aTimer.AutoReset = true;
 
            // Start the timer
            aTimer.Enabled = true;
 
            Console.WriteLine("Press the Enter key to exit the program at any time... ");
            Console.ReadLine();
        }
 
 
        private static void OnTimedEvent(Object source, System.Timers.ElapsedEventArgs e)
        {
            Random rnd = new Random();
 
            
            int randNumber = rnd.Next(0, 333);
            
            Console.WriteLine(e.SignalTime);
 
            if (randNumber % 13 == 0)
                Console.WriteLine("Ваше число: " + randNumber + ". Надо бить тревогу!!!\n");
 
            else
                Console.WriteLine("Ваше число: " + randNumber + ". Все хорошо\n");
 
 
            PsiActivityCheck psi = new PsiActivityCheck(DateTime.Now.ToShortDateString(), DateTime.Now.ToLongTimeString());
 
            XmlSerializer formatter = new XmlSerializer(typeof(PsiActivityCheck));
            //static int i = 0;
 
            using (FileStream fs = new FileStream("serial" + i++ + ".xml", FileMode.OpenOrCreate))
            {
                formatter.Serialize(fs, /*e.SignalTime.ToString()*/psi);
            }
 
        }
Потом запускаю Командную строку от имени администратора, но выдает ошибку

Прошу подсказать, что не так делаю
Миниатюры
Создание службы Windows  
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.09.2017, 18:41
Ответы с готовыми решениями:

Создание службы в Visual Studio
Стала разбираться как создавать службу...вот на этом сайте http://support.microsoft.com/kb/816169...

Создание службы с инсталлятором в VS 2015
Подскажите пожалуйста. У меня раньше стояла VS2013 и в ней у меня получалось создавать...

Windows службы
Здравствуйте. Вопрос касается работы программы в фоновом режиме. Вернее будет сервер, который по...

Создание и запуск службы Windows
Помогите разобраться с созданием и запуском службы Windows. К примеру: у меня есть библиотека...

10
3560 / 2501 / 1174
Регистрация: 14.08.2016
Сообщений: 8,206
16.09.2017, 19:27 2
путь содержит пробелы - возьми его в кавычки
0
1 / 1 / 2
Регистрация: 25.02.2016
Сообщений: 141
16.09.2017, 21:16  [ТС] 3
Diamante, уточните: кто содержит пробелы, что взять в кавычки?
0
214 / 210 / 146
Регистрация: 20.11.2014
Сообщений: 1,161
16.09.2017, 21:31 4
Цитата Сообщение от Goret Посмотреть сообщение
кто содержит пробелы
Цитата Сообщение от Diamante Посмотреть сообщение
путь
до вашего WindowsService2.exe
0
3560 / 2501 / 1174
Регистрация: 14.08.2016
Сообщений: 8,206
16.09.2017, 21:38 5
InstallUtil.exe "c:\......." вот так напиши
0
1 / 1 / 2
Регистрация: 25.02.2016
Сообщений: 141
16.09.2017, 21:56  [ТС] 6
Diamante, bbq, спасибо, здесь все выполнено.

Далее, на сколько я понимаю, компилирую саму службу.
Но выдает окно
Миниатюры
Создание службы Windows  
0
3560 / 2501 / 1174
Регистрация: 14.08.2016
Сообщений: 8,206
16.09.2017, 22:04 7
ты через сборка->собрать решение(f7) собирал?
0
1 / 1 / 2
Регистрация: 25.02.2016
Сообщений: 141
16.09.2017, 22:18  [ТС] 8
Diamante, да
0
3560 / 2501 / 1174
Регистрация: 14.08.2016
Сообщений: 8,206
16.09.2017, 22:22 9
а запускал через net start?
0
1 / 1 / 2
Регистрация: 25.02.2016
Сообщений: 141
16.09.2017, 22:42  [ТС] 10
Diamante, нет. Не знаю, что это . Нам не рассказывали
0
1 / 1 / 2
Регистрация: 25.02.2016
Сообщений: 141
16.09.2017, 22:48  [ТС] 11
Diamante, если это то ,что я нашел, тогда вот что выдало
Миниатюры
Создание службы Windows  
0
16.09.2017, 22:48
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.09.2017, 22:48
Помогаю со студенческими работами здесь

Создание windows-службы из готовой программы
Здравствуйте. подскажите пожалуйста как сделать виндовс службу. У меня есть уже готовый код...

Создание Службы Windows, делающей скрины и управляющей устройствами ввода
Всем добрый вечер! Не подскажите, необходимо сделать службу которая бы могла сделать скрин...

Создание службы, завершающей работу системы
Хлопцы задача передо мной стояла такая: создать службу Win32 которая бы завершала работу системы...

Создание Службы Windows
Добрый день, с С++ не знаком вообще, стоит задача написать несколько служб на нем, до этого писал...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru