Отправка сообщения в службу Windows через веб-страницу - PullRequest
1 голос
/ 30 апреля 2010

Как я могу сделать это без проблем доступ запрещен ?

У меня есть служба Windows:

protected override void OnCustomCommand(int command)
{        
    if (command == 1)
    {
      foreach (Process traceProcess in Process.GetProcessesByName("notepad.exe"))
      {
        traceProcess.Kill();
      }                     
    }        
}

, когда я делаю это:

ServiceController sc = new ServiceController("ProjectManager");
if (sc != null)
    sc.ExecuteCommand(1);

Из оконных форм это работает, но не с веб-страницы, я получаю отказ в доступе на sc.ExecuteCommand.

Каков наилучший способ для веб-страницы общаться со службой?

Ответы [ 2 ]

1 голос
/ 04 мая 2010

Я нашел решение проблемы с разрешением; розетки.

Таким образом, мой сервис открывает локальный порт (недоступен для любой другой машины, только локальный)

Затем на своей веб-странице я подключаюсь к этому сокету и отправляю нужный мне байт, а взамен служба выполняет нужный мне код.

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

0 голосов
/ 30 апреля 2010

Необходимо проверить разрешения удостоверения пула приложений.

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