private void btnLikeHwnd_Click(object sender, EventArgs e) { List <int> list = GetHwndInfor.ClassNameAndTitleToParentHwnd(this.txtLikeTitle.Text, this.txtClassName.Text); if (list.Count == 1) { iActiveHwnd = list[0]; this.txtHwnd.Text = iActiveHwnd.ToString(); this.txtTitle.Text = GetHwndInfor.GetHwndTitle(iActiveHwnd); MessageBox.Show("获取成功。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); } else { MessageBox.Show(string.Format("获取到{0}个相同符合条件的句柄位置。", list.Count), "不能唯一确定", MessageBoxButtons.OK, MessageBoxIcon.Warning); } }
private void btnLikeHwnd2_Click(object sender, EventArgs e) { List <int> list = GetHwndInfor.ClassNameAndTitleToParentHwnd(this.txtTopFormTitle.Text, this.txtTopFormClassName.Text); if (list.Count == 1) { int tempHwnd = list[0]; Regex rg = new Regex("^(?<x>[0-9]+),(?<y>[0-9]+)$"); if (rg.IsMatch(this.txtOffsetPoint.Text)) { GroupCollection group = rg.Match(this.txtOffsetPoint.Text).Groups; Point p = new Point(int.Parse(group["x"].ToString()), int.Parse(group["y"].ToString())); iActiveHwnd = GetHwndInfor.TopFromHwndAndOffsetPointGetHwnd(tempHwnd, p, this.txtParentClassName.Text); if (iActiveHwnd != 0) { this.txtHwnd.Text = iActiveHwnd.ToString(); this.txtTitle.Text = GetHwndInfor.GetHwndTitle(iActiveHwnd); MessageBox.Show("获取成功。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); } else { this.txtHwnd.Text = "0"; this.txtTitle.Text = "获取失败"; } } else { MessageBox.Show("错误的鼠标位置,正确的格式(x,y):23,89", "输入错误", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { MessageBox.Show(string.Format("获取到{0}个相同符合条件的句柄位置。", list.Count), "不能唯一确定", MessageBoxButtons.OK, MessageBoxIcon.Warning); } }