Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# NET中应用程序之间的通信_C#_.net - Fatal编程技术网

C# NET中应用程序之间的通信

C# NET中应用程序之间的通信,c#,.net,C#,.net,我有一个正在编写的应用程序套件,它由多个程序组成,每个程序设计用于处理特定任务。例如,一个应用程序允许您搜索客户列表,并为该客户预订设备。另一个应用程序可以让你查找已经预订的房间,然后直接查看我们在哪里记录他们带了什么设备,等等 我还设计了一个通知系统来配合这个套件。(如果你使用过Groupwise电子邮件,想象一下电子邮件通知,甚至谷歌日历上的提醒)。我想让用户只需要登录到一个主应用程序,这也是通知应用程序。然后,他们在套件中打开的每一个应用程序都会检查一些系统变量/.NET对象或其他什么,并

我有一个正在编写的应用程序套件,它由多个程序组成,每个程序设计用于处理特定任务。例如,一个应用程序允许您搜索客户列表,并为该客户预订设备。另一个应用程序可以让你查找已经预订的房间,然后直接查看我们在哪里记录他们带了什么设备,等等

我还设计了一个通知系统来配合这个套件。(如果你使用过Groupwise电子邮件,想象一下电子邮件通知,甚至谷歌日历上的提醒)。我想让用户只需要登录到一个主应用程序,这也是通知应用程序。然后,他们在套件中打开的每一个应用程序都会检查一些系统变量/.NET对象或其他什么,并查看他们是否已经登录,而不需要再次登录。顺便说一句,这个“登录”实际上是登录到MySQL,这是我们的预订、结账、库存状态、部门客户等数据库


我的问题是:做这样的事情最好的方法是什么?是让每个应用程序在.NET运行时搜索主应用程序,并检查其当前是否已登录?我以前从未做过这样的事。任何建议都值得赞赏。

通常您使用多个进程来实现状态分离,这样一个进程中的失败不会影响整个进程。然而,你似乎想要相反的结果

因此,使用一个主要的应用程序流程。无论何时单击另一个小程序(无论是从“开始”菜单、桌面快捷方式等),它都会将其命令行转发到主应用程序并关闭。单一进程接收新的启动请求并打开相应的窗口


Win32有用于这类事情的mailslot对象,但我相信您可以找到一种使用WCF或类似工具的更纯粹的.NET方法。

这不是web应用程序的原因是什么?它将被分发,可从各种设备访问,所有表单可以单独实现,登录将被跟踪为会话等。听起来像是一个很好的候选人,而不是解决问题,随着它变成一堆。EXE-S。看这里,尤其是提到WCF,我会认为这是一个糟糕的设计。我以前见过这样设计的系统,它们通常就像一堆卡片,当出现问题时会崩溃。完全同意@TimB。为什么您要对所有引用相同内容/业务流程且将由相同用户使用的N个应用程序执行此操作?。。。从任何角度来看,这都不是一个好主意。。这不是从用户体验、开发、部署、维护、可扩展性的角度来看的。我在一所大学的IT部门工作,这是有记录的。我有点像“私生子继子”,因为我实际上经营着IT的视听服务部门。我更像是一个编程爱好者。我已经联系过我们的网络开发人员,让他们把这个东西变成一个网络应用程序,但是如果你曾经在一所大学工作过,你知道要想让任何人完全投入到某件事情上,可能需要很长时间。至于我自己把它变成一个网络应用程序。。。嗯,我真的没有那种技能。我得从头开始学。不过,我已经学习Java一段时间了,向C#的过渡也很不错。