C#程序控制开始菜单的弹出

C#程序控制开始菜单的弹出


作者:unknown&;nbsp来自:网络      基本思路为,寻找开始菜单按钮窗口,并模拟用户单击  void pop()  {  User32.EnumWindows(new EnumProc(Enum), 0);  }  private bool Enum(IntPtr hWnd, uint param)  {  User32.STRINGBUFFER buffer=new User32.STRINGBUFFER();  User32.GetClassName(hWnd, ref buffer, 256);  if (buffer.szText == "Shell_TrayWnd")  {    User32.EnumChildWindows(hWnd, new EnumProc(Enum2), 0);    return false;  }  else return true;  }  IntPtr lastForeGroundWindow;  private bool Enum2(IntPtr hWnd, uint param)  {  User32.STRINGBUFFER buffer = new User32.STRINGBUFFER();  User32.GetClassName(hWnd, ref buffer, 256);  if (buffer.szText == "Button")  {    if (User32.SendMessage(hWnd, WndMsg.BM_GETSTATE, 0, 0) == User32.BST_PUSHED)    {    User32.SetForegroundWindow(lastForeGroundWindow);    }    else    {    lastForeGroundWindow = User32.GetForegroundWindow();    User32.SetForegroundWindow(hWnd);    User32.PostMessage(hWnd, WndMsg.BM_CLICK, 0, 0);    }    return true;  }  else    return false;  }    (2005-5-04:11:44)

 感谢原创者的辛勤劳动,希望对您有所帮助,转载请注明原出处。
 您可能对 [C#] 的这些文章也感兴趣:

C#版MVC框架PureMVC的深入分析和改良方案
VisualC#弹出窗口杀手
基于.Net平台应用程序唯一运行实例实现
VisualC#.Net网络程序开发-Tcp篇(1)
如何使用C#访问POP3服务器
用C#制作一个目录选择对话框
用VisualC#访问DB2数据库
VisualStudio.Net内幕(6)
通过.NETFramework访问活动目录(1)
在C#程序中嵌套播放器