2015-09-10 51 views
1

這裏是我想要做的:使用PyQt4構建GUI程序,使兩臺計算機之間的測試連接更容易(以最大限度地減少人爲錯誤)。所以,這個程序的一部分是使用QProcess來啓動iperf3,充當客戶端或服務器。 QProcess能夠成功地啓動iperf3並輸出結果,然而,由於某種原因,PyQt中的iperf3客戶端無法連接到服務器,儘管我能夠從終端連接到服務器。PyQt4:QProcess啓動iperf3無法連接到服務器

這裏的情況和組合會作爲服務器和客戶端簡要說明

  • iperf3在終端作爲客戶機 - > iperf3在PyQt的作爲服務器 - 成功
  • iperf3在終端作爲客戶機 - > iperf3在終端作爲服務器 - 成功
  • iperf3在PyQt的作爲客戶端 - > iperf3在PyQt的作爲服務器 - 無法在PyQt的連接
  • iperf3如客戶端 - 在終端作爲服務器> iperf3 - 無法連接

我檢查了防火牆,我禁用了它,看它是否解決了問題,但沒有。以防萬一,如果你想知道關於我用於終端iperf3什麼命令,這裏是:

  • 客戶端 - iperf3 -c 127.0.0.1 -u -t 10
  • 服務器 - iperf3 -s

至於QProcess中:

  • self.process.start( 'iperf3',[ ' - ç127.0.0.1 -u -t 10'])
  • self.process.start( 'iperf3',[' - s'])

如果您需要更多信息,請讓我知道。感謝有關此問題的任何幫助/見解。順便說一句,我應該提到我現在在筆記本電腦上測試這個程序,因此是環回地址。

回答

1

好的,我想通了。這個錯誤是在QProcess中的代碼,這是

self.process.start( 'iperf3',[ ' - ç127.0.0.1 -u -t 10'])

它應該已經

self.process.start('iperf3',[' - c','127.0.0.1',' - u',' - t','10'])