2012-04-10 7 views
4

Можно создать дубликат:
Screenshot of process under Windows ServiceКак получить скриншот программы при запуске службы Windows?

Я пытаю более или менее эмулировать InfoPath Form Services. Поэтому я хочу иметь возможность одобрять или отклонять формы через мобильные устройства (пользователи будут уведомлены по электронной почте). У меня есть возможность одобрить/отклонить формы, но проблема в том, что мне нужна возможность снимать скриншоты моей программы для подробных отчетов об ошибках (в случае, если что-то пойдет не так во время процесса утверждения) (процесс снятия экрана уже реализован) , Мне нужна возможность запускать программу на сервере без какого-либо входа в систему. Именно здесь возникает проблема. Если я запускаю свою программу в качестве службы, я не получаю интерактивное окно, но у меня есть возможность иметь мою программу всегда запускать. Поэтому мне нужно иметь возможность запускать программу, когда компьютер загружается, и иметь возможность скриншота.

Есть ли способ иметь сервис Windows с интерактивным окном при загрузке, даже если его вычеркнутый экран и никогда не может быть замечен пользователями, или способ эмулировать/подделывать окно для моей программы, чтобы он мог снимать скриншот сама по себе, не нуждаясь в интерактивном окне?

Кроме того, моя программа написана на рамках .NET в C#

+0

скриншот метод работает, то есть у меня есть возможность, чтобы захватить мое окно и сохраните его в файл. Проблема возникает из-за того, что мне нужно иметь возможность запускать эту программу, когда ни один пользователь не вошел в систему, поэтому я не могу отобразить окно. Поэтому мне нужно найти способ запуска GUI-программы в качестве службы, которая имеет доступ к своему собственному графическому интерфейсу или к другому способу запуска моей программы. – user1324855

+4

См. Http://stackoverflow.com/questions/1445788/screenshot-of-process-under-windows-service – Gabe

+0

Согласитесь с Гейбом, это дубликат. –

ответ

0

В дополнение к тому, служба не имеют рабочего стола для визуализации ...

Мы не выполнили визуализацию InfoPath форм на сервер, как вы пытаетесь, потому что он просто не будет работать правильно. Вы можете обманывать какое-то время, но запуск приложения Office в режиме безголовых сервисов на сервере - это просто плохая идея. Вы также столкнетесь с интересными проблемами, поскольку идентификация пользователя не будет соответствовать идентификатору процесса (т. Е. Не может запрашивать данные ACL).

Вы опции:

  • Капля InfoPath часть, если вам просто нужно одобрение.
  • Пойдите с существующим решением для мобильных форм. Существует некоторая поддержка мобильных форм в Forms Services, и вы можете иметь очень простые представления специально для мобильных устройств, если они работают. Существуют также существующие решения для мобильного рендеринга форм InfoPath.
  • честно реализовать рендеринг форм. Формат XSN документирована ...
  • Рендер InfoPath на отдельных машинах с вошедшим пользователем один для каждого пользователя в то время ...