у нас есть проект установки, написанный в Visual Studio 2008 на C #, который устанавливает и удаляет службы с помощью класса ServiceInstaller.
Когда я устанавливаю службы, это не занимает слишком много времени, но когда я удаляю со следующим кодом, процесс для каждой службы получает несколько секунд (а у нас много служб):
ServiceInstaller si = new ServiceInstaler();
string path = string.Format("/assemblypath={0}", strServiceExecutablePath);
string[] cmdline = { path };
InstallContext context = new InstallContext(string.Empty, cmdline);
si.Context = context;
si.ServiceName = strServiceName;
si.Uninstall(null);
Кто-то знает почему?
Здесь я хочу задать несколько связанных вопросов.
Какая разница между работами:
InstallUtill /u exePath
при удалении службы
и:
sc delete serviceName
И почему при удалении какой-либо записи из реестра из CurrentControlSet \ services я все еще вижу службу в services.msc, но с:
<Failed to read description. Error code:2
В описании?
Откуда мне нужно вручную удалить сервис, чтобы удалить его полностью?
Спасибо за продвижение.