У меня есть служба, которая должна открывать приложение exe (приложение C#) на основе определенных условий. Когда служба запускается в режиме отладки (Visual studio), она открывает приложение. Но когда он установлен как услуга, он этого не делает. Он не может открыть приложение. Почему это происходит?Запуск приложения exe из службы windows
ответ
Спасибо за ответы! Я нашел решение для него, и я разместил его здесь. Я создал фиктивное приложение, которое скрыто при запуске, и оно выполняет ту же самую функцию, что и для службы.
1.create dummy app (скопировать код вставки из приложения в форму) Скрыть его после запуска. 2. запустить приложение сразу после установки. 3.add ключ реестра, чтобы он запускался после перезагрузки системы.
простыми словами, поведение службы клонирования.
То, что вы пытаетесь сделать, прямо не возможно при обычных обстоятельствах - просто запуск приложения в новом процессе из вашего кода службы Windows не будет взаимодействовать с графическим интерфейсом пользователя, который в настоящий момент вошел в систему. Я боюсь.
Однако существуют способы связи между службой и графическим интерфейсом.
Hi @olitee Спасибо за ответ. Я попытался использовать опцию «Взаимодействие с рабочим столом». Это успешно запускает приложение, но запрашивает у пользователя разрешение на чтение сообщения или сброс. Цель заявки - заполнить посещаемость принудительно и не откладывать ее. Есть ли возможность, когда он может переопределить права пользователя и запустить приложение напрямую? –
Я ничего не знаю об этом - это поведение по умолчанию существует по какой-то причине. Предпочтительный подход заключается в том, чтобы ваш сервис связывался с настольным приложением через именованные каналы. Вы можете создать вспомогательное приложение, которое тихо запускается в сеансе пользователя и контролирует этот канал для сообщений. Это приложение может либо представить его графическому интерфейсу пользователю при получении сообщения, либо запустить другое приложение так, как вы уже описали. – olitee
Основываясь на ваших комментариях, я думаю, что вы действительно ищете здесь обычное приложение для пользователей и планировщик. Возможно, вы захотите использовать собственный планировщик Windows для запуска приложения каждый понедельник, если он всегда включен или помещает приложение в Startup. Когда приложение запускается, оно должно проверять текущий день недели, и если он находится в понедельник, и приложение ранее не запускалось в этот день, приложение должно запускаться. Если нет, вы можете полностью полностью закрыть приложение.
Часть планировщика может быть настроена мной для моего компьютера правильно ?. Но это приложение имеет многопользовательскую базу, оно должно быть предварительно сконфигурировано с помощью этой логики. Служба выполнила мою работу, но я понял, что она потерпела неудачу только после ее установки. –
- 1. Запуск приложения Windows Forms из службы Windows
- 2. Запуск DLL/EXE-программы из Windows-службы в Windows 7
- 3. Запуск IKVM exe в качестве службы Windows
- 4. Запуск приложения как службы windows
- 5. Запуск Exe из приложения UWP
- 6. Запуск приложения (.EXE) с C#?
- 7. Запуск приложения Windows Forms. от службы
- 8. Запуск приложения WPF как службы Windows
- 9. запуск службы windows из java
- 10. Запуск программы из службы windows
- 11. Запуск приложения из фоновой службы
- 12. Запуск exe из другого exe
- 13. Запуск приложения Java как службы Windows
- 14. Запуск приложения из службы Window в C#
- 15. Запуск окна приложения из службы окон
- 16. Запуск службы Windows на консоли
- 17. Удаление службы Windows без EXE
- 18. Запуск mulitple экземпляров службы Windows из Wix
- 19. Запуск файла .exe непрерывно с помощью службы Windows
- 20. Запуск приложения open gl es из службы windows
- 21. Запуск приложения из службы Windows не может найти файл?
- 22. Запуск приложения из службы с помощью CreateProcessAsUser
- 23. Запуск внешнего EXE из python
- 24. Запуск .exe из C++
- 25. Запуск службы windows без регистрации
- 26. Вызов приложения windows exe в рамках метода веб-службы
- 27. Создание службы Windows из приложения Windows Forms
- 28. Запуск приложения WebApi из приложения Windows
- 29. Запуск службы WCF во время службы Windows
- 30. Запуск задачи администратора из службы Windows
Должен ли пользователь видеть приложение? Это невозможно. И работает ли ваш сервис в сеансе? Это может потребоваться. – TomTom
Службы по умолчанию запускаются в изолированном сеансе, что не позволяет взаимодействовать с пользователем. Службы Windows не предназначены для интерактивного взаимодействия, поэтому то, что вы пытаетесь сделать здесь, - это не то, что предназначена для службы. Возможно, вы захотите рассмотреть возможность рефакторинга своего кода в качестве пользовательского режима. Уточните, что вам нужно для приложения exe, и что делает служба? –
Да, пользователи должны видеть приложение. Нет. любая работа для этого? –