# -*- coding:gbk -*-
import wx
import os
####################################主窗口##################################################
class MyApp(wx.App):
def OnInit(self):
frame = wx.Frame(parent = None,title = 'Gui Xniff',size = (250,340)) # 生成框架窗口
panel = wx.Panel(frame, -1) # 生成面板
self.button1 = wx.Button(panel, -1, '嗅探', pos=(80, 280))
self.Bind(wx.EVT_BUTTON, self.OnButton1, self.button1)
#####################
label1 = wx.StaticText(panel, -1, '分秒必争制作 http://www.djhui.net',pos = (10,10)) # 生成标签
label = wx.StaticText(panel, -1, 'IP地址',pos = (10,40)) # 生成标签
self.text1 = wx.TextCtrl(panel, # 生成文本框
-1, # 指定文本框ID
'192.168.0.1',
pos = (55,40), # 指定文本框位置
size = (120, -1)) # 指定文本框大小
self.check1 = wx.CheckBox(panel, # 生成复单选框
-1, # 指定复单选框ID
'输出TCP数据报', # 指定复单选框文本
pos = (10, 70), # 指定复选框位置
size = (150, 20)) # 指定复选框大小
self.check2 = wx.CheckBox(panel, # 生成复单选框
-1, # 指定复单选框ID
'输出UDP数据报', # 指定复单选框文本
pos = (10, 90), # 指定复选框位置
size = (150, 20)) # 指定复选框大小
self.check3 = wx.CheckBox(panel, # 生成复单选框
-1, # 指定复单选框ID
'输出ICMP数据报', # 指定复单选框文本
pos = (10, 110), # 指定复选框位置
size = (150, 20)) # 指定复选框大小
self.check4 = wx.CheckBox(panel, # 生成复单选框
-1, # 指定复单选框ID
'过滤密码信息', # 指定复单选框文本
pos = (10, 130), # 指定复选框位置
size = (150, 20)) # 指定复选框大小
self.check5 = wx.CheckBox(panel, # 生成复单选框
-1, # 指定复单选框ID
'后台运行', # 指定复单选框文本
pos = (10, 150), # 指定复选框位置
size = (150, 20)) # 指定复选框大小
self.check6 = wx.CheckBox(panel, # 生成复单选框
-1, # 指定复单选框ID
'解析主机名', # 指定复单选框文本
pos = (10, 170), # 指定复选框位置
size = (150, 20)) # 指定复选框大小
self.check8 = wx.CheckBox(panel, # 生成复单选框
-1, # 指定复单选框ID
'过滤端口', # 指定复单选框文本
pos = (10, 190), # 指定复选框位置
size = (150, 20)) # 指定复选框大小
self.check9 = wx.CheckBox(panel, # 生成复单选框
-1, # 指定复单选框ID
'将输出保存到文件', # 指定复单选框文本
pos = (10, 210), # 指定复选框位置
size = (150, 20)) # 指定复选框大小
self.check10 = wx.CheckBox(panel, # 生成复单选框
-1, # 指定复单选框ID
'以ASCII形式输出', # 指定复单选框文本
pos = (10, 230), # 指定复选框位置
size = (150, 20)) # 指定复选框大小
self.check11 = wx.CheckBox(panel, # 生成复单选框
-1, # 指定复单选框ID
'以16进制形式输出', # 指定复单选框文本
pos = (10, 250), # 指定复选框位置
size = (150, 20)) # 指定复选框大小
frame.Show()
return True
#######################################主窗口########################################
def OnButton1(self, event): # 按钮事件响应函数
cmd = ""
if self.check1.IsChecked():cmd = ' -tcp'
if self.check2.IsChecked():cmd +=' -udp'
if self.check3.IsChecked():cmd +=' -icmp'
if self.check4.IsChecked():cmd +=' -pass'
if self.check5.IsChecked():cmd +=' -hide'
if self.check6.IsChecked():cmd +=' -host'
if self.check8.IsChecked():cmd +=' -port'
if self.check9.IsChecked():cmd +=' -log pass.txt'
if self.check10.IsChecked():cmd +=' -asc'
if self.check11.IsChecked():cmd +=' -hex'
os.system('start xsniff.exe -addr '+self.text1.GetValue()+ cmd)
app = MyApp()
app.MainLoop()