Программно нажать сочетание клавиш - C#

Узнай цену своей работы

Формулировка задачи:

Доброго времени суток. Столкнулся с проблемой, пытаюсь сделать приложение, которое по таймеру, каждые 10 сек должна выполнять код:
(e.Control) && (e.KeyCode == Keys.S)
При этом должно происходить сохранение файла в другой программе (в которой при нажатии Ctrl+S как раз и происходит сохранение) Все дело в том, что программа корявая постоянно отваливается и автосохранение в ней при этом постоянно отключается. Вот хочу сделать приложение, которое будет постоянно по таймеру нажимать эти самые Ctrl+S Заранее спасибо!

Решение задачи: «Программно нажать сочетание клавиш»

textual
Листинг программы
// Для поиска нужного приложения.
            [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 calculatorHandle = FindWindow("CalcFrame", "Калькулятор");
 
                
                if (calculatorHandle == IntPtr.Zero)
                {
                    MessageBox.Show("Calculator is not running.");
                    return;
                }
 
                
                SetForegroundWindow(calculatorHandle);
                SendKeys.SendWait("^S");
 
            }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 4.5 из 5
Похожие ответы