从Windows调用Linux进程并接收stdout

问题描述:

我在我们公司建立了一个遗留应用程序... ahem;经典VB(VB 6)。 它具有运行在Linux服务器上的优化程序(CPLEX MIP Solver)组件,并且使用Java开发。从Windows调用Linux进程并接收stdout

如果我们想提供一个Windows UI来调用远程Linux服务器上的优化器实例,我应该如何执行它?

优化器将抽出有关其进度的消息,并且需要在UI上显示消息。

我想到了现在的两种选择。

  1. 用PLINK调用linux进程。不确定它是否可以将STDOUT引入到Windows。
  2. 构建一个小的Java应用程序并将其作为守护程序加载到Linux服务器上并通过TCP进行通信。

希望能得到专家的建议。 感谢帮助!

您还可以使用SSH运行命令和捕捉他们的输出,例如,用于.NET http://www.codeproject.com/KB/IP/sharpssh.aspx

您可以使用密钥自动执行登录过程。

的PLINK选项是迄今为止rthe最容易实现的(前提是你有Win32 API中的东西类似于system()调用)

如果组件是用Java编写的,为什么不在Windows上使用它?如果不是,我误解了你,你有源代码吗?如果是,则将其复制到Windows并重新编译。如果它确实是Linux特有的,Cygwin也可能是一个不错的选择。但是,它仍然需要原始的源代码。

+0

感谢您的意见。 相信我,优化器组件是巨大的。 它不能在用户的桌面上运行并托管在Linux服务器上。 幕布背后的一切都是我们企业中的Linux或Solaris。 – Tuxist 2009-01-07 16:05:32