别忘了添加引用
using System.Runtime.InteropServices;
直接添加代码:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;
namespace TestKeyPress
{
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("Sorry");
}
}
}
}
看过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的窗口,右键---属性---就找到你想要的东西了。
这样下次就不用百度去找,各种我们没听说过的类的名字,和窗口的名字了