zoukankan      html  css  js  c++  java
  • 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");

                }

            }

  • 相关阅读:
    装饰器模式
    观察者模式
    策略模式
    分析法汇总
    事后诸葛亮分析(名字好难想队)
    团队项目第六周——Alpha阶段项目复审(名字很难想队)
    团队博客(第五周)-“名字好难想”
    团队博客(第四周)-“名字好难想”
    团队博客(第三周)-“名字好难想”
    团队博客(第二周)-“名字好难想”
  • 原文地址:https://www.cnblogs.com/rr163/p/3999474.html
Copyright © 2011-2022 走看看