Re: [問題] 請問如何知道外部程式的狀態??

看板C_Sharp (C#)作者 (口白人生)時間18年前 (2007/05/18 10:30), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/3 (看更多)
http://msdn2.microsoft.com/en-us/library/ms633548.aspx 下面的範例... 拉一個 Button 元件到 Form 上... 按下該按鈕會將目前執行中的 notepad 視窗顯示在桌面... (PS. notepad 可能有好幾個...只會顯示其中一個...) using System; using System.Diagnostics; using System.Runtime.InteropServices; // to import Dll using System.Windows.Forms; namespace WindowHandlerTest { public partial class Form1 : Form { public Form1() { InitializeComponent(); } // to import ShowWindow API of use32.dll [DllImport("User32")] private static extern int ShowWindow(int hwnd, int nCmdShow); // to list Show Comaands private enum CommandShow : int { SW_HIDE = 0, SW_SHOWNORMAL = 1, SW_NORMAL = 1, SW_SHOWMINIMIZED = 2, SW_SHOWMAXIMIZED = 3, SW_MAXIMIZE = 3, SW_SHOWNOACTIVATE = 4, SW_SHOW = 5, SW_MINIMIZE = 6, SW_SHOWMINNOACTIVE = 7, SW_SHOWNA = 8, SW_RESTORE = 9, SW_SHOWDEFAULT = 10, SW_FORCEMINIMIZE = 11, SW_MAX = 11 } ; private static void button1_Click(object sender, EventArgs e) { Process[] p = Process.GetProcessesByName("notepad"); if (p.Length > 0) { // to get valid Window Handler int hwnd; hwnd = p[0].MainWindowHandle.ToInt32(); ShowWindow(hwnd, (int) CommandShow.SW_SHOWDEFAULT); } } } } -- http://blog.roodo.com/chhuang -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.30.74.102 ※ 編輯: chhuang 來自: 61.30.74.102 (05/18 10:37)
文章代碼(AID): #16JG-paa (C_Sharp)
文章代碼(AID): #16JG-paa (C_Sharp)