码迷,mamicode.com
首页 > 其他好文 > 详细

C# 判断某程序是否运行

时间:2014-09-29 12:01:47      阅读:268      评论:0      收藏:0      [点我收藏+]

标签:os   ar   for   sp   art   on   c   r   bs   

[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");

 

            }

        }

C# 判断某程序是否运行

标签:os   ar   for   sp   art   on   c   r   bs   

原文地址:http://www.cnblogs.com/rr163/p/3999474.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!