欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
使用C#在應用程序間發(fā)送消息 - calm

摘要:說(shuō)來(lái)說(shuō)去,還是覺(jué)得API的功能是最強大的,但是.NET FCL,MFC等對API的封裝之后也使得程序的開(kāi)發(fā)變得更加容易。本模塊的主要原理還是使用API,查找指定類(lèi)型,窗口文本的窗口對象,獲取該對象的指針。然后操作該對象。

實(shí)例1:

創(chuàng )建一個(gè)C#Windows Form應用程序,向窗口中添加一個(gè)按鈕button1,添加事件相應函數:

 private void button1_Click(object sender, System.EventArgs e)
 {
  MessageBox.Show("This is button1 click!");
 }

實(shí)例2:

創(chuàng )建一個(gè)C# Windows Form應用程序,添加一個(gè)按鈕控件button1

1:添加using System.Runtime.InteropServices;

2: 添加對API的引用:

  [DllImport("user32.dll")]
  public static extern IntPtr FindWindow(string lpClassName, string lpWindowName);
 
  [DllImport("user32.dll")]
  public static extern IntPtr FindWindowEx(IntPtr hwndParent,IntPtr hwndChildAfter,string lpszClass,string lpszWindow);

  [DllImport("user32.dll", CharSet=CharSet.Unicode)] 
  public static extern IntPtr PostMessage(IntPtr hwnd,int wMsg,IntPtr wParam,IntPtr lParam);

3:添加button1的相應函數:

private void button1_Click(object sender, System.EventArgs e)
  {
      IntPtr hwnd_win ;          // 存放實(shí)例1中的Form1窗口的窗口句柄
      IntPtr hwnd_button ;     // 存放實(shí)例1中的Form1中的button1控件的窗口句柄

    // 參數1:窗口類(lèi)型,參數2:窗口名稱(chēng)

     hwnd_win = FindWindow("WindowsForms10.Window.8.app3", "Form1"); // 得到Form1窗口的句柄。
 

   // 參數1:父窗口句柄,   參數2:子窗口指針;參數3:窗口類(lèi)型;參數4:窗口文本

  hwnd_button = FindWindowEx(hwnd_win ,new IntPtr(0) ,"WindowsForms10.BUTTON.app3","button1"); 

  // 定義待發(fā)送的消息  

 const int BM_CLICK = 0x00F5;
   Message msg = Message.Create(hwnd_button ,BM_CLICK ,new IntPtr(0),new IntPtr(0));

  // 向Form1窗口的button1控件發(fā)送BM_CLICK消息   

PostMessage(msg.HWnd ,msg.Msg ,msg.WParam ,msg.LParam);

  }

 

總結:

其實(shí)C#幕后還是采用的消息處理機制,本創(chuàng )許也充分利用了Windows的消息處理機之。

附帶一個(gè)獲取窗口類(lèi)型的技巧:使用SPY ++就可以獲取任何窗口的窗口類(lèi)型。

所有的類(lèi)似于WM_CHAR,WM_COMMAND等消息的值,可以在.Net目錄下的WinUser.h文件中查詢(xún)到。



本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
c#如何處理自定義消息
C# Control的Invoke和BeginInvoke及其實(shí)現機制
windows消息隊列 - windows - 我的愛(ài)好
孫鑫VC視頻教程筆記之第一課“Windows程序的內部運行原理”
Win32編程基礎知識_天空總是藍色的
SDK編程講座 之 第三講:Windows消息機制(2)(轉載)
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久