Запуск компонентов пользовательского интерфейса в службе без вывода сообщений - PullRequest
0 голосов
/ 23 февраля 2010

У меня есть компонент, который молча извлекает некоторые данные из сети, используя компонент .NET WebBrowser. Он написан так, чтобы не отображать никаких диалоговых окон или других интерактивных компонентов пользовательского интерфейса, но, поскольку это компонент формы, мне нужно создать форму и поток STA для его размещения. Затем я запускаю его с помощью Form.ShowDialog ()

Это работает отлично, за исключением того, что я не могу запустить эту настройку в неинтерактивном сервисе. Когда я пытаюсь это сделать, я получаю исключение «Отображение модального диалогового окна или формы, когда приложение не работает в режиме UserInteractive, не является допустимой операцией. Укажите стиль ServiceNotification или DefaultDesktopOnly для отображения уведомления от сервисное приложение. "

Есть ли способ настроить службу так, чтобы она все равно работала с WebBroswer, без отображения какого-либо пользовательского интерфейса или чего-либо еще?

1 Ответ

1 голос
/ 23 февраля 2010

Нет, нет, это изменение было внесено из Windows Vista в качестве меры безопасности, которую вы должны подписать, чтобы использовать.

Вообще говоря, то, что вы делаете, - не лучший способ получить чистящее содержимое, но если вы должны сделать это таким образом, вам потребуется включить службу для взаимодействия с рабочим столом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...