C# 判断某程序是否运行_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > C# 判断某程序是否运行

C# 判断某程序是否运行

 2014/9/29 10:00:02  r163  程序员俱乐部  我要评论(0)
  • 摘要:[DllImport("user32.dll")]privatestaticexternboolSetForegroundWindow(IntPtrhWnd);[DllImport("user32.dll")]privatestaticexternboolShowWindowAsync(IntPtrhWnd,intnCmdShow);[DllImport("user32.dll")]privatestaticexternboolIsIconic(IntPtrhWnd)
  • 标签:程序 C# 运行

[DllImport("user32.dll")]

        private static extern bool

        SetForegroundWindow(IntPtr hWnd);

        [DllImport("user32.dll")]

        private static extern bool ShowWindowAsync(IntPtr hWnd, int nCmdShow);

        [DllImport("user32.dll")]

        private static extern bool IsIconic(IntPtr hWnd);

        // 消息函数

        [DllImport("user32.dll", EntryPoint = "PostMessageA")]

        public static extern bool PostMessage(IntPtr hWnd, int Msg, int wParam, int lParam);

 

        [DllImport("user32.dll")]

        public static extern IntPtr FindWindow(string strclassName, string strWindowName);

        [DllImportAttribute("user32.dll")]

        public static extern int SendMessage(IntPtr hWnd, int Msg, int wParam, int lParam);

 

        public const int WM_SYSCOMMAND = 0x0112;

        public const int SC_MAXIMIZE = 0xF030;

 

        private string exeName = "SaoMiaoApp";

        public void SetForm()

        {

            Process[] processes = Process.GetProcessesByName(exeName);

 

            if (processes.Length > 0)

            {

                IntPtr hWnd = processes[0].MainWindowHandle;

 

                if (IsIconic(hWnd))

                    ShowWindowAsync(hWnd, 9);// 9就是SW_RESTORE标志,表示还原窗体

                //SendMessage(hWnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0);

                SetForegroundWindow(hWnd);

            }

            else

            {

                Process.Start(exeName + ".exe");

 

            }

        }

发表评论
用户名: 匿名