Службы Windows и несколько зарегистрированных пользователей - PullRequest
3 голосов
/ 23 июня 2010

Я разрабатываю службу Windows, которая будет работать в определенное время каждый день. Что произойдет, если несколько пользователей вошли в систему на этом компьютере? Будет ли он работать 5 раз одновременно, если в систему вошли 5 пользователей? Если это так, есть ли способ предотвратить это?

Ответы [ 3 ]

6 голосов
/ 23 июня 2010

Служба Windows устанавливается на всей машине и работает под одной указанной учетной записью пользователя, которая на самом деле может быть не «пользователем», а «Локальной системой» или «Сетевой службой» или подобным.Сервис будет работать только один раз, независимо от того, вошли ли пользователи в систему.Фактически, он будет работать, если компьютер включен, даже если ни один пользователь не вошел в систему.

1 голос
/ 23 июня 2010

Как ответили другие, нет, он будет запущен только один раз.

Это поднимает некоторые флаги для меня, хотя.Почему вы пишете Windows Service для этого?Похоже, излишним для процесса, который должен быть запущен только один раз.Сервисы обычно используются для элементов, которые постоянно должны выполнять задачу, отслеживать что-либо или получать события.Я не знаю, какие у вас конкретные цели, но, возможно, запланированное задание подойдет лучше.Недостатком является то, что запланированное задание будет выполняться только тогда, когда пользователь вошел в систему, и они могут быть специфическими для пользователя.

Если это происходит в корпоративной или корпоративной среде, возможно, есть рабочая группа, которая имеет планированиепрограммное обеспечение, и вы можете настроить это как некое пакетное задание.

1 голос
/ 23 июня 2010

Службы Windows запускаются один раз для каждой машины.

Учетная запись, под которой запускается служба, может быть указана в консоли MMC Windows Services. Обычно служба будет работать под учетной записью «Локальная система».

Если вам нужно, чтобы ваше приложение запускалось только один раз для каждого компьютера, вы направляетесь в нужном направлении со службой. Однако, если вам нужно запустить его по расписанию, простое приложение, которое запускается планировщиком задач Windows, может быть лучшим маршрутом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...