找传奇、传世资源到传世资源站!

枚举所有QQ窗口(C#调API)

8.5玩家评分(1人评分)
下载后可评
介绍 评论 失效链接反馈

using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using System.Runtime .InteropServices ;using System.Collections;namespace 枚举所有QQ窗口{ public partial class Form1 : Form { public delegate bool CallBack(int hwnd, int lParam); public Form1() { InitializeComponent(); } public class API1 { public static ArrayList ii = new ArrayList(); public static string[] jj = new string[10]; public int insidenum = 0; [DllImport("user32")] public static extern int EnumWindows(CallBack x, int y); [DllImport("user32")] public static extern int GetWindowText(int hwnd, StringBuilder lptrString, int nMaxCount); [DllImport("user32")] public static extern int GetClassNameA(int hwnd, StringBuilder lptrString, int nMaxCount); [DllImport("user32")] public static extern int GetParent(int hwnd); [DllImport("user32")] public static extern int IsWindowVisible(int hwnd); public bool Report(int hwnd, int lParam) { StringBuilder classname = new StringBuilder(256); GetClassNameA(hwnd, classname, classname.Capacity); string leiname = ""; leiname = classname.ToString(); int pHwnd; pHwnd = GetParent(hwnd); if (pHwnd == 0 && IsWindowVisible(hwnd) == 1 && leiname == "TXGuiFoundation") { StringBuilder sb = new StringBuilder(512); GetWindowText(hwnd, sb, sb.Capacity); if (sb.Length > 0) { string p = sb.ToString(); ii.Add(p); jj[insidenum] = p; insidenum ; } } return true; } } private void button1_Click(object sender, EventArgs e) { API1.jj[0] = null; API1.ii.Clear(); comboBox1.Items.Clear(); comboBox1.Text = ""; API1 api2 = new API1(); CallBack myCallBack = new CallBack(api2 .Report ); API1.EnumWindows(myCallBack, 0); if (API1.jj[0] != null) { foreach (string ui in API1.ii) { comboBox1.Items.Add(ui); } comboBox1.Text = (API1.ii[0]).ToString(); } else MessageBox.Show("任务栏没有QQ窗口", "提示"); } }}

评论

发表评论必须先登陆, 您可以 登陆 或者 注册新账号 !


在线咨询: 问题反馈
客服QQ:174666394

有问题请留言,看到后及时答复