コード例 #1
0
        private void button2_Click(object sender, EventArgs e)
        {
            Thread.Sleep(2000);
            var hwnd = dmsoft.GetForegroundWindow();

            if (hwnd == 0)
            {
                rtb_message.AppendText("找不到窗口句柄\r\n");
                return;
            }

            string title = dmsoft.GetWindowTitle(hwnd);

            BindWindowEx bindWindowEx = new BindWindowEx()
            {
                Display = "normal",
                Mouse   = "normal",
                Keypad  = "normal",
                Public  = "",
                Mode    = 0
            };

            bool res = dmsoft.BindWindowEx(hwnd, bindWindowEx);

            if (res)
            {
                rtb_message.AppendText($"绑定窗口 {title} 成功");
                return;
            }
            else
            {
                rtb_message.AppendText($"绑定窗口 {title} 失败");
                return;
            }
        }
コード例 #2
0
        private void getTopFrom_Click(object sender, EventArgs e)
        {
            try
            {
                if (this.getTopFrom.Text == "恢复挂起的进程")
                {
                    if (ThreadId != 0)
                    {
                        this.WindowState = FormWindowState.Minimized;
                        //this.Hide();
                        Thread.Sleep(500);
                        ProcessMgr.ResumeProcess(ThreadId);
                    }

                    this.getTopFrom.Text = "当前活动窗体信息";
                    return;
                }
                IntPret = mydm.GetForegroundWindow();

                if (IntPret != 0 && IntPret != mydm.GetSpecialWindow(0) && IntPret != mydm.GetSpecialWindow(1))
                {
                    if (IntPret == ((int)this.Handle))
                    {
                        this.label2.Text = "找到自己啦!";
                    }
                    else
                    {
                        ThreadId         = mydm.GetWindowProcessId(IntPret);
                        this.label2.Text = string.Format("进程ID:{1},目标程序位置:{0}", mydm.GetWindowProcessPath(IntPret), ThreadId);
                        return;
                    }
                }
                else
                {
                    this.label2.Text = "找到桌面或者任务栏啦!";
                }
                IntPret = 0;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "异常");
            }
        }