【问题标题】:Running UI components in a service silently在服务中静默运行 UI 组件
【发布时间】:2011-01-19 22:27:29
【问题描述】:

我有一个组件,它使用 .NET WebBrowser 组件从 Web 中静默检索一些数据。它被编写为不会显示任何对话框或任何其他交互式 UI 组件,但由于它是一个表单组件,我需要创建一个表单和 STA 线程来托管它。然后我使用 Form.ShowDialog() 启动它

这很好用,除了我无法在非交互式服务中运行此设置。当我尝试执行此操作时,我收到异常“当应用程序未在 UserInteractive 模式下运行时显示模式对话框或表单不是有效操作。指定 ServiceNotification 或 DefaultDesktopOnly 样式以显示来自服务应用程序。”

有什么方法可以配置一个服务,让它运行 WebBroswer,而不显示任何 UI 或任何东西?

【问题讨论】:

  • 内容需要浏览器环境是怎么回事?为什么不能简单地直接与服务器交互?
  • 我的应用程序登录到 my.t-mobile.com 以获得平衡,他们的网站上到处都是 javascript,需要有一些模拟实际浏览器的东西。如果您知道更好的方法来做到这一点,我会非常高兴听到它,我对我实现它的方式也不满意,但我不知道另一种方式

标签: .net windows-services non-interactive


【解决方案1】:

不,没有,此更改是从 Windows Vista 开始的,作为一种安全措施,您必须选择加入才能使用。

一般来说,您所做的并不是获取抓取内容的最佳方式,但如果您必须这样做,那么您需要启用服务与桌面交互.

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-02-20
    • 2014-09-26
    • 1970-01-01
    • 1970-01-01
    • 2012-09-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多