日期:2014-05-18 浏览次数:20870 次
别忘了添加引用
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的窗口,右键---属性---就找到你想要的东西了。
这样下次就不用百度去找,各种我们没听说过的类的名字,和窗口的名字了