C#获取当前活动窗口进程、进程ID、程序路径

来源:互联网 发布:ios连接数据库 编辑:程序博客网 时间:2024/04/28 10:30

博主最近要写一个程序,需要获取windows中活动窗口的进程及程序路径

需要添加引用System.Windows.Forms

代码如下

using System;using System.Diagnostics;using System.Threading;using System.Runtime.InteropServices;using System.Windows.Forms;namespace GetActiveWindowProcess   //获取活动窗口进程信息{    class Program    {        [DllImport("User32.dll")]        public static extern IntPtr GetForegroundWindow();     //获取活动窗口句柄        [DllImport("User32.dll", CharSet = CharSet.Auto)]        public static extern int GetWindowThreadProcessId(IntPtr hwnd, out int ID);   //获取线程ID        static void Main(string[] args)        {            Thread.Sleep(3000);    //睡眠3s,用来选择活动窗口            IntPtr hWnd = GetForegroundWindow();    //获取活动窗口句柄            int calcID = 0;    //进程ID            int calcTD = 0;    //线程ID            calcTD = GetWindowThreadProcessId(hWnd, out calcID);            Process myProcess = Process.GetProcessById(calcID);            MessageBox.Show("进程名:" + myProcess.ProcessName + "\n" + "进程ID:" + calcID + "\n" + "程序路径:" + myProcess.MainModule.FileName);  //在MessageBox中显示获取的信息            Console.ReadKey();        }    }}



0 0
原创粉丝点击