0

嗨,我有一个非常烦人的问题,我无法理解原因。

我有 ac# 表单应用程序,它在 main 中接收一些 args 并使用它们连接到设备(ip、port、user、passw)。它还会打印这些参数以查看它们是否正确。

现在,如果我使用 Windows 提示符中的参数调用 exe,一切正常。但是,如果我使用运行时 exec() 函数从 java 执行相同的操作,应用程序将启动,以与以前完全相同的方式打印正确的参数,但不连接!

好像论点是错误的……有什么建议吗?也许 exec 传递与提示不同?

我已经用 vs 调试了这个过程,变量在两种情况下都是相同的,但是连接函数(这提醒了设备供应商的第三方库)

代码

public MyForm(string[] args) 
{ 
   InitializeComponent(); 
   if (args.Length > 0) 
   { 
      this.IP = args[0]; 
      this.PASSWORD = args[4]; 
      this.ID = args[3]; 
      this.PORT = args[1]; 
      this.logTextArea.AppendText("Connection to " +
                    IP +":"+PORTA+" "+ID+" "+
                    PASSWORD+"\n"); 
   } else set fixed values


JAVA
     Runtime.getRuntime().exec("MyForm.exe IP PORT NOT_USED ID PASSW");
4

0 回答 0