gpt4 book ai didi

c# - .NET 将 key 发送到计算器

转载 作者:行者123 更新时间:2023-11-30 14:19:29 25 4
gpt4 key购买 nike

下面的 sendkeys 代码适用于记事本,但不适用于计算器。问题是什么? (与我在这里发送的相比,这是另一个问题 Sendkeys problem from .NET program )

[DllImport("user32.dll", CharSet = CharSet.Unicode)]
public static extern IntPtr FindWindow(string lpClassName,string lpWindowName);
[DllImport("User32")]
public static extern bool SetForegroundWindow(IntPtr hWnd);
private void button1_Click(object sender, EventArgs e)
{
IntPtr calculatorHandle = FindWindow("SciCalc", "Calculator");
//IntPtr calculatorHandle = FindWindow("Notepad", "Untitled - Notepad");
if (calculatorHandle == IntPtr.Zero)
{
MessageBox.Show("Calculator is not running.");
return;
}
SetForegroundWindow(calculatorHandle);
System.Threading.Thread.Sleep(1000);
SendKeys.SendWait("111*11=");
//SendKeys.SendWait("{ENTER}");
//cnt++;
SendKeys.Flush();
}

最佳答案

我将告诉您如何弄清楚如何将按键发送到 calc.exe。

在您使用 calc.exe 窗口进程时,使用 spy++ 监视消息。为此,请进入 spy++ 并单击日志消息工具栏按钮。将光标拖到 calc.exe 窗口上。我给出的说明是针对 VS2008 的,对于其他 VS 版本中包含的 Spy++,它们可能略有不同。但相同的功能始终可用。

您将在输入文本时确切地看到发送了哪些消息。您也需要这样做。

使用 Win32 API SendMessage , LPARAM 和 WPARAM 到你找到的窗口句柄。

关于c# - .NET 将 key 发送到计算器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2604898/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com