Почему не имитируется ввод клавиш в блокноте?
У меня есть такой код:
using System.Diagnostics;
using System.Runtime.InteropServices;
namespace AutoPoster
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
}
[DllImport("USER32.DLL", CharSet = CharSet.Unicode)]
public static extern IntPtr FindWindow(string lpClassName, string lpWindowName);
[DllImport("USER32.DLL")]
public static extern bool SetForegroundWindow(IntPtr hWnd);
private void button1_Click(object sender, EventArgs e)
{
IntPtr notepadHandle = FindWindow(null, "Безымянный — Блокнот");
if (SetForegroundWindow(notepadHandle))
SendKeys.SendWait("Test");
}
}
}
Когда я проверял его с калькулятором, все работало отлично. Но с блокнотом он не работает. Лишь когда я нажимал на кнопку и сразу же нажимал курсором на запись в блокнот, некая часть Test записывалась. Как понимаю, программа не открывает блокнот сама? Как это исправить?