2

我试图从 ISpy C# 插件仅向我的 Java 应用程序发送一个简单的字符串。

我的 C# 插件的客户端代码来自这个网站... http://msdn.microsoft.com/en-us/library/bew39x2a.aspx

我的 Java 代码是

    ServerSocket serverSocket;
    try {
                serverSocket = new ServerSocket(8888);
                System.out.println("Server is up");

                Socket clientSocket = null;
                try 
                {
                    System.out.println("Waiting for incoming connections");
                    clientSocket = serverSocket.accept();
                    System.out.println("Accepted incoming connection");
                } 
                catch (IOException e) 
                {
                    System.out.println("Accept failed: 8888");
                    System.exit(-1);
                }
            } 
            catch (IOException e) {
                System.out.println("Could not listen on port: 8888");
                System.exit(-1);
            }

当我在加载插件的情况下启动 ISpy 应用程序时,插件的其余部分按预期执行,但 Java 服务器套接字从未收到来自 C# 插件的连接。C# 插件的客户端代码在此代码调用的单独线程中运行...

_networker = new Thread(() => SendTest()) { Name = "networker thread", IsBackground = false };

其中 _networker 是线程对象的句柄。

我的问题是,为什么 C# 客户端没有连接到 Java 服务器套接字?当 Windows 提示我时,Java 服务器套接字是允许的。我在 Windows 8 64 位。

如果这似乎是解决我的问题的不好方法,我已经尝试过管道,但这在通过 jvm 和 windows os 进行通信之间提出了更大的问题。

如果我可以在这些程序之间读取/写入文件,我也不会反对。无论工作如何,我都不是在这里寻找速度或效率。

4

0 回答 0