我想找到一种关于如何将参数传递给已经启动的C#程序(WPF)的解决方案。
该程序功能广泛,但易于理解-一个简单的应用程序:
一个仍在运行的WPF主窗口。 当它起作用时,我想传递不同的时间-命令行参数(不同文件的路径或某些文本)。 当应用程序从参数获取路径时->启动新线程(显示另一个窗口,其中是带有参数路径的Label)。
对于WPF应用程序,最简单的解决方案是什么?
我找到了一些解决方案,但它们不适合我的问题。谢谢您的帮助。
更新:
根据注释中的提示-我使用了套接字。我现在有两个控制台应用程序(服务器和客户端)。代码:
服务:
Socket serverSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.IP);
Socket internalSocket;
byte[] recBuffer = new byte[256];
serverSocket.Bind(new IPEndPoint(IPAddress.Parse("127.0.0.1"), 1024));
serverSocket.Listen(10);
internalSocket = serverSocket.Accept();
internalSocket.Receive(recBuffer);
Console.WriteLine(ASCIIEncoding.ASCII.GetString(recBuffer));
Console.Read();
客户:
Socket clientSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.IP);
byte[] recBuffer = new byte[256];
clientSocket.Connect("127.0.0.1", 1024);
clientSocket.Send(ASCIIEncoding.ASCII.GetBytes("Hello world!"));
Console.WriteLine(ASCIIEncoding.ASCII.GetString(recBuffer));
Console.Read();
它起作用,以便服务器启动时开始监听,运行客户端-将字符串发送到服务器并立即关闭。到此为止还可以。但是,我希望服务器不断监听。这样我可以根据需要运行客户端多次(对于仍在运行的服务器),并且我将一直收到此消息。 有什么建议吗?