麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁(yè) > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

c#使用spy進(jìn)行模擬操作

2019-11-17 02:52:51
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

c#使用spy進(jìn)行模擬操作

2014-09-19 01:16 by 遲來(lái)的春天, ... 閱讀, ... 評(píng)論, 收藏, 編輯

很無(wú)奈,寫了很長(zhǎng)時(shí)間,最后保存時(shí)網(wǎng)頁(yè)失去響應(yīng),真是要命呢。本來(lái)想就此放棄了,但是想還是粗略的重寫一次吧,希望日后可以對(duì)朋友有一定的幫助。

Microsoft.Spy工具是一個(gè)基礎(chǔ)工具,我們簡(jiǎn)要介紹一下使用方法:

spy在vs有自帶的,也可以在網(wǎng)下直接下載。

打開spy工具,主界面如下:

今天我們使用vnc作為一個(gè)示例

目標(biāo)是在server內(nèi)寫入192.168.2.200,并點(diǎn)擊Options第二個(gè)按鈕

第一步,如何獲取vnc窗體,使用spy進(jìn)行窗體查找

拖動(dòng)查找工具圖標(biāo)到需要的界面上。

這樣我們就可以找到需要的窗體。

FindWindow 可以查找第一個(gè)主窗體,使和類名或標(biāo)題。

FindWindowEx可以查找窗體下的控件。

SendMessage向窗體發(fā)送消息。

使和窗口搜索查找控件。

 1  [DllImport("user32.dll", EntryPoint = "FindWindow", SetLastError = true)] 2         //參數(shù)1:指的是類名。參數(shù)2,指的是窗口的標(biāo)題名。兩者至少要知道1個(gè) 3         public static extern IntPtr FindWindow(string lpClassName, string lpWindowName); 4  5  6         [DllImport("user32.dll", SetLastError = true, CharSet = CharSet.Auto)] 7         public static extern IntPtr FindWindowEx(IntPtr parentHandle, IntPtr childAfter, string lclassName, string windowTitle); 8  9         [DllImport("user32.dll", EntryPoint = "SendMessage", SetLastError = true, CharSet = CharSet.Auto)]10         public static extern IntPtr SendMessage(IntPtr hwnd, uint wMsg, int wParam, string lParam);11 12         [DllImport("user32.dll", EntryPoint = "SendMessage", SetLastError = true, CharSet = CharSet.Auto)]13         public static extern IntPtr SendMessage(IntPtr hwnd, uint wMsg, int wParam, int lParam);

 1 IntPtr win =FindWindow(null, "VNC Viewer : Connection Details"); 2              if (win != IntPtr.Zero) 3              { 4                  IntPtr winComboBox = FindWindowEx(win, new IntPtr(), "ComboBox", null); 5                  if (winComboBox != IntPtr.Zero) 6                  { 7                      IntPtr winEdit = FindWindowEx(winComboBox, new IntPtr(), "Edit", null); 8  9                      IntPtr resultEdit = SendMessage(winEdit, 0xC, 0, "192.168.2.100");10 11 12                      //獲取第一個(gè)按鈕13                      IntPtr button1 = FindWindowEx(win, new IntPtr(), "Button", "&Options...");14 15                      if(button1 != IntPtr.Zero)16                         SendMessage(button1, 0xF5, 0, 0); //點(diǎn)擊事件17 18                      if (winEdit != IntPtr.Zero)19                      {20                          MessageBox.Show("找到編輯框");21                      }22                      //MessageBox.Show("找到下拉框");23                  }24                  else25                  {26                      //MessageBox.Show("沒(méi)有找到下拉框");27                  }28 29 30                  MessageBox.Show("已經(jīng)找到窗體");31              }32              else33              {34                  MessageBox.Show("沒(méi)有找到窗體");35              }36         }

執(zhí)行結(jié)果如下:

如果多個(gè)按鈕,又沒(méi)有標(biāo)題,則只能一個(gè)一個(gè)的獲取,如下

如果哪位朋友還有其它方法,還請(qǐng)多多指教。

1 IntPtr button1 = FindWindowEx(win, new IntPtr(), "Button", null);2 IntPtr button2 = FindWindowEx(win, button1, "Button", null);


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 色交视频 | 亚洲一区二区三区91 | 中文字幕在线免费 | 国产精品久久久久久久不卡 | av在线播放地址 | 在线观看国产免费视频 | 黄色片在线免费播放 | 爱操成人网 | 亚洲成人在线免费 | 久久久久久麻豆 | 污视频在线看 | 福利在线国产 | 黄色免费在线视频网站 | 91精品久久久久久久久久久 | 9797色| 逼特逼视频在线观看 | 成人一区二区三区在线 | 日韩三级伦理在线观看 | 婷婷久久久久久 | 久久影院国产精品 | 日本高清com | 亚洲人成在线播放 | 密室逃脱第一季免费观看完整在线 | 99热草| 色网站免费观看 | 午夜视频在线观看免费视频 | 一区二区免费看 | 欧美爱爱视频网站 | 色综合一区二区 | 久草在线高清 | 午夜视频久久 | 国产日韩线路一线路二 | 欧美日韩a∨毛片一区 | 久久国产乱子伦精品 | 国产精品1区,2区,3区 | av国产片| 毛片免费一区二区三区 | 日韩视频区 | 天堂二区| 韩国三级日本三级香港三级黄 | 国产精品一区2区3区 |