Не удаляется служба без InstallContext

Есть код который удаляет службу:

using (var serviceInstaller = new ServiceInstaller())
{
   var Context = new InstallContext("log.log", null); // Создаёт .log файл и записывает туда данные по удалению службы
   serviceInstaller.Context = Context; // Записываем данные из контекста
   serviceInstaller.ServiceName = service; // Имя службы
   serviceInstaller.Uninstall(null); // Удаляем службу         
}

Вот такой лог получаю:

Выполняется удаление источника EventLog Http_analyzer_v7_netfilter. Предупреждение. Источник Http_analyzer_v7_netfilter не зарегистрирован на локальном компьютере. Выполняется удаление службы Http_analyzer_v7_netfilter из системы... Служба Http_analyzer_v7_netfilter успешно удалена из системы.

Вопрос:

Почему служба не удаляется без инициализатора InstallContext ?

Если сделаю просто так:

using (var serviceInstaller = new ServiceInstaller())
{
   serviceInstaller.ServiceName = service; // Имя службы
   serviceInstaller.Uninstall(null); // Удаляем службу         
}

То так не удаляется, можно ли сделать так чтобы без инициализатора спокойно удалилось, или же с инициализатором InstallContext но без записи данных. ( он всё выводит в консоль ещё )


Ответы (1 шт):

Автор решения: GooliveR

В принципе проблему решил данным способом:

var Context = new InstallContext(); // Инициализируем контекст
Context.Parameters.Add("LogToConsole", "False"); // Передаём параметр не показывать в консоли
serviceInstaller.Context = Context;

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

→ Ссылка