1

我可能已经疯了......但我希望有办法做到这一点。

我有一个包含事件处理的基类。我的控制台应用程序正在运行我的工作流程。该工作流程的一部分是在单独的线程中以特定间隔引发事件以广播工作人员的当前状态(我听到很多人称之为心跳)。

我在同一个解决方案中还有另一个程序,它是一个 Windows 窗体,我希望它能够监听控制台应用程序中发生的事情,以便它可以显示工作状态。我尝试同时运行两者并验证事件正在触发,但监视器没有找到任何引发的事件。

我担心没有办法做到这一点,我将需要使用数据库日志记录方法或其他方法......但是如果有人知道如何使用事件(或事件样式)逻辑在应用程序之间进行通信, 我会很感激。

目前,应用程序正在同一位置运行。目标是监视器应用程序最终将与我们网络的广播器相连,以便我们的工作站可以在不登录机器的情况下监视某些工作人员状态,并且主监视器将向我们显示所有工作人员的完整状态。

如果我需要扩展/澄清这一点,请告诉我,让一个 2 岁的孩子在我打字的时候看《星球大战》,所以我可能错过了一些东西。

4

1 回答 1

2

有几种方法:使用远程处理、自定义窗口消息和命名管道。一种方法是如何在 Visual Basic .NET 或 Visual Basic 2005 中使用命名管道进行进程间通信

这是一个远程示例:VB.Net 中的简单进程间通信

这里是自定义窗口消息的示例:VB.NET、VB6 和 C# Interprocess communication via Window Messaging

也许最“最新”的方式是使用 WCF 回调通道:Using Callback Contracts in WCF for Asynchronous Publish/Subscribe Event-Style Communication

于 2009-10-01T00:29:53.007 回答