我有一个现有的程序,我必须解决。它提供了一个相当不错的插件架构,但我遇到了一个问题。我需要创建一个命令行插件来检查程序是否已经运行,然后将命令行参数传递给现有实例。
这可以使用插件吗?在这种情况下最好的做法是使用消息传递系统吗?
答案 0 :(得分:0)
对于您描述的方案,我使用了通过net.pipe协议托管的WCF服务。基本上,我有一个合同,定义一个端点,可以接收您将作为命令行参数提供的信息。
当您的流程启动时,它会首先尝试联系此服务。如果该服务可用,则表示现有进程已启动并正在运行。在这种情况下,打开进程的通道,将数据发送给它,然后退出。如果该服务不可用,请启动该服务。