2014-01-25 2 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?напечатать результат функции scapy в tkinter

+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 заявления.

Смежные вопросы