2011-09-29 25 views
2

我有一个WCF服务,我已经在另一个问题here中提到过。正如我已阅读here主机在Windows服务WCF是所有原因的最佳解决方案。所以我选择这个选项。但是,Windows服务托管不允许任何可视化过程通信(在我们使用托管在控制台应用程序中的自托管服务并将任何问题报告给控制台之前)。我如何获得托管服务的类似方式?我的想法是使用另一个命名管道绑定进行服务和人类之间的视觉“沟通”。 如果有人推荐我一些有用的东西,我会对我很好。 非常感谢你们!为服务WCF托管的交互式“屏幕”

回答

3

如果您需要“屏幕”只是为了让服务可以报告问题,我会建议您使用Windows事件从服务中记录此类事件,然后您可以创建任何UI /背景处理可以在窗口事件日志中查找此类事件并正确报告它们(例如:发送电子邮件等)

+0

感谢您的回答!你能否给我指点一些关于“windows事件”的文章,样本? – kseen

+2

@kseen:Google是你的朋友 - 也是MSDN文档!请参阅[如何使用C#写入事件日志](http://support.microsoft.com/kb/307024)和[.NET中EventLog类的MSDN文档](http://msdn.microsoft.com /en-us/library/system.diagnostics.eventlog.aspx) –

+0

查看 - 事件日志类的'http:// msdn.microsoft.com/en/us/library/system.diagnostics.eventlog.aspx'。和'http:// www.codeproject.com/KB/cs/LogWatcherRSSFeeds.aspx'举例说明如何监控事件日志。 – Ankur

1

我倾向于同意@ Ankur的回答,但是我认为我会给你一个替代选项。您可以考虑使用WMI为正在运行的服务提供视觉反馈。我参加了一个有趣的ALT.NET讨论(full video is available here),并且它应该相对简单直观地用WMI来测试你的应用程序,让你可以查询系统状态

+0

我想用WMI只能查询“当前状态”而不是以前的状态吧? – Ankur