2014-01-25 43 views
-1
a=lb + "(IP(src='" + SrcIP + "', dst='" + DestIP + "')/TCP(sport=" + SrcPort + ", dport=" + DestPort + ",flags='"+P+""+S+""+A+""+U+""+F+""+R+"'), timeout=" + Timeout + ")" 

p=eval(a) 

p.show() 

tkMessageBox.showinfo(title = "the configuration and results", message = "The configuration is:\nFlags:"+psh+"\n"+syn+"\n"+ack+"\n"+urg+"\n"+fin+"\n"+rst+"\nSource IP:"+SrcIP + "\nDestination IP: " + DestIP + "\nSource Port: " +SrcPort+ "\nDestination port: " + DestPort + "\nTimeout: " +Timeout+"\nSend/Received method: "+lb+"\t") 

如何將p.show()的結果放入tkMessageBox.showinfo中?在tkinter中打印scapy函數的結果

+0

你能提供更多細節嗎? p.show()做什麼? – KiraLT

+1

**不要使用'eval'調用函數**:您可以創建要使用的參數,然後調用該函數,而不是爲'eval'創建一個字符串。在大多數情況下,使用eval是[非常不好的做法](http://stackoverflow.com/questions/1832940/is-using-eval-in-python-a-bad-practice) –

+0

@Lukas a是一個包含許多變量由用戶設置 p = eval(a)運行函數 和p.show()給出結果 我想要一種方法將這些結果放在tkMessageBox中 – user3234849

回答

0

我不認爲你可以,因爲.show()方法只使用print陳述。