9

在窗口形式中,我制作了一个按钮,并试图将其发送F1到特定窗口(例如 FireFox、我的电脑等...)

我的问题是:

  • 我如何通过窗口的名称来做到这一点?(例如“Mozilla Firefox”)
  • 我如何通过进程的名称来做到这一点?(如firefox.exe)
4

2 回答 2

14

按窗口名称:

[DllImport("User32.dll")] 
static extern IntPtr FindWindow(string lpClassName, string lpWindowName);  
[DllImport("User32.dll")] 
static extern int SetForegroundWindow(IntPtr hWnd);

IntPtr ptrFF = FindWindow(null, "Mozilla Firefox");
SetForegroundWindow(ptrFF);
SendKeys.SendWait("{F1}");

按进程名称:

Process proc = Process.GetProcessesByName("firefox")[0];
IntPtr ptrFF = proc.Handle;
SetForegroundWindow(ptrFF);
SendKeys.SendWait("{F1}");
于 2010-04-30T11:35:23.777 回答
1

看看SendKeys类。

于 2010-04-30T11:28:53.910 回答