C#中使用API函数FINDWINDOW查找窗体

引用:
using System.Runtime.InteropServices;

主体代码:
public partial class SimulateInput : Form
{
    public SimulateInput()
    {
        InitializeComponent();
    }
    [DllImport("USER32.DLL")]
    public static extern IntPtr FindWindow(string lpClassName, string lpWindowName);

    private void button1_Click(object sender, EventArgs e)
    {
        if (FindWindow("OpusApp", null) != IntPtr.Zero)
        {
            MessageBox.Show("Find it");

        }
        else
        {
            MessageBox.Show("Not Find");
        }

    }
}

API函数FINDWINDOW有两个参数,在上述示例代码中也可把此函数部分替换为以下内容:

if (FindWindow("OpusApp", "文档1 - Microsoft Word") != IntPtr.Zero)

if (FindWindow(null, "文档1 - Microsoft Word") != IntPtr.Zero)

对于其中的类名(如:OpusApp)及窗体名(如:文档1 - Microsoft Word)的获取,可通过visual studio tools的Spy++来实现:监视->窗口中找到要Find的窗口,右键->属性打开“属性检查器”,在此窗口中可获取类名、窗体名等。

你可能感兴趣的:(C#中使用API函数FINDWINDOW查找窗体)