Недавно я унаследовал пару приложений, которые работают как службы Windows, и у меня возникают проблемы с предоставлением gui (доступного из контекстного меню в системном трее) с обоими из них.
Причина, по которой нам нужен gui для службы Windows, заключается в том, чтобы иметь возможность повторно настраивать поведение служб (ов) Windows, не прибегая к остановке/повторному запуску.
Мой код отлично работает в режиме отладки, и я получаю контекстное меню, и все ведет себя правильно и т.д.
Когда я устанавливаю службу через "installutil", используя именованную учетную запись (то есть не локальную учетную запись системы), служба работает нормально, но не отображает значок на панели задач (я знаю, что это нормальное поведение, потому что я не имеют опции "взаимодействовать с рабочим столом" ).
Вот проблема: если я выбираю параметр "LocalSystemAccount" и проверяю опцию "взаимодействовать с рабочим столом", служба запускает AGES для начала без какой-либо очевидной причины, и я просто продолжаю получать
Не удалось запустить службу... на локальном компьютере.
Ошибка 1053: служба не ответила на запрос запуска или управления своевременно.
Кстати, я увеличил тайм-аут службы Windows по умолчанию от 30 секунд до 2 минут через хакер реестра (см. http://support.microsoft.com/kb/824344, поиск TimeoutPeriod в разделе 3), однако запуск службы все еще не работает.
Мой первый вопрос: почему учетная запись "Локальная системная учетная запись" принимает SOOOOO MUCH LONGER, чем когда служба входит в систему с не-LocalSystemAccount, вызывая тайм-аут службы Windows? какая разница между этими двумя, чтобы вызвать такое поведение при запуске?
Во-вторых - сделав шаг назад, все, что я пытаюсь достичь, - это просто служба Windows, которая предоставляет gui для конфигурации - я был бы очень счастлив запустить с помощью не-Local System Account (с именем user/pwd), если бы я мог заставить службу взаимодействовать с рабочим столом (то есть иметь контекстное меню, доступное в системном трее). Возможно ли это, и если да, то как?
Любые указатели на вышеуказанные вопросы будут оценены!