Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有一个必须解决的现有程序。它提供了一个相当不错的插件架构,但我遇到了一个问题。我需要创建一个命令行插件来检查程序是否已经在运行,然后将命令行参数传递给现有实例。
这可以使用插件吗?在这种情况下,最佳实践是使用消息传递系统吗?
对于您描述的场景,我使用了通过 net.pipe 协议托管的 WCF 服务。基本上,我有一个合同,它定义了一个可以接收您将作为命令行参数提供的信息的端点。
当您的进程启动时,它首先会尝试联系此服务。如果服务可用,则意味着现有进程已启动并正在运行。在这种情况下,打开进程的通道,将数据发送给它,然后退出。如果该服务不可用,请启动该服务。