别忘了添加引用
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的窗口,右键---属性---就找到你想要的东西了。


这样下次就不用百度去找,各种我们没听说过的类的名字,和窗口的名字了