Почему не имитируется ввод клавиш в блокноте?

У меня есть такой код:

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 записывалась. Как понимаю, программа не открывает блокнот сама? Как это исправить?


Ответы (0 шт):