Handle окна - C#

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

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

Привет всем. Хотел бы чтобы программа получила доступ к игре Gta san Andreas ( для игры по сети через клиент Samp ). В игре через клиент пишется сообщение через F6 и отправляется нажатием ENTER. У меня в программе есть кнопка допустим "посадить игрока" и edit1 нужно чтобы пользователь вводил id игрока в edit1 и нажимал кнопку "посадить игрока" ( iD он знает сам ). Пример: команда /jail ID Вроде нужно: 3 длл на импорт библиотек вин апи, ешё штук пять для поиска и фокусировки окна, ну и для отправки кнопок в это окно. Пожалуйста дайте код. Желательно весь!

Решение задачи: «Handle окна»

textual
Листинг программы
const int WM_KEYDOWN = 256;
        const int WM_KEYUP = 257;
 
        [DllImport("user32.dll", EntryPoint = "FindWindow")]
        private static extern IntPtr FindWindow(string _ClassName, string _WindowName);
 
        [DllImport("user32.dll", EntryPoint = "FindWindowEx")]
        private static extern IntPtr FindWindowEx(IntPtr hwndPrnt, IntPtr hwndChildAfter, string _ClassName, string _WindowName);
 
        [DllImport("user32.dll", CharSet = CharSet.Auto)]
        private static extern int PostMessage(IntPtr hwnd, int wMsg, IntPtr wParam, IntPtr lParam);
 
        private void Post()
        {
            IntPtr hWnd = FindWindow(null, "Безымянный - Блокнот");
            if (hWnd == IntPtr.Zero)
            {
                MessageBox.Show("Not found main", "Error");
                return;
            }
            IntPtr hEdit = FindWindowEx(hWnd, IntPtr.Zero, "Edit", "");
            if (hEdit == IntPtr.Zero)
            {
                MessageBox.Show("Not found child", "Error");
                return;
            }
            IntPtr t1 = (IntPtr)Keys.F5;
            IntPtr nul = IntPtr.Zero;
            PostMessage(hEdit, WM_KEYUP, t1, nul);
            PostMessage(hEdit, WM_KEYDOWN, t1, nul);
        }

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


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

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

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