Перейти к содержанию
Авторизация  
alkayde123

Нажатие ЛКМ в окне hWnd

Рекомендуемые сообщения

Здравствуйте.
Как можно сделать клик в неактивном окне hWnd?
Раньше работало через SendMessage, но на данный момент почему-то работает только в активном окне, тобишь в свернутом не кликает и т.д.
Игра GTA 5 RP

 

Спойлер

[DllImport("User32.dll")]
public static extern Int32 SendMessage(IntPtr hWnd, int Msg, IntPtr wParam, IntPtr lParam);
public static IntPtr MakeParam(int low, int hight)
{
return (IntPtr)((low & 0xFFFF) | (hight << 16));
}

static public void Click(int x, int y)
{
SendMessage(hWnd, 0x0200, (IntPtr)0, MakeParam(x, y));
SendMessage(hWnd, 0x0201, (IntPtr)0, MakeParam(x, y));
SendMessage(hWnd, 0x0202, (IntPtr)0, MakeParam(x, y));
}

 

 

На данный момент это сделано так, но работает сейчас только в активном окне :с
Можно ли что-то придумать?
Пробовал PostMessage и т.д. - не помогает
Буду благодарен за любую помощь

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
14 часов назад, alkayde123 сказал:

работает сейчас только в активном окне

Неактивные окна не принимают системные сообщения. Пробуй SendInput.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
1 час назад, Xipho сказал:

Неактивные окна не принимают системные сообщения. Пробуй SendInput.

Суть в том, что раньше это работало, а вот после обновления Rage MP перестало 😉

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
1 час назад, Xipho сказал:

Неактивные окна не принимают системные сообщения. Пробуй SendInput.

Есть какой-нибудь пример использования данной функции для handle?
Мне просто нужно, чтобы работало в свернутом окне, можно даже любой другой способ.
Чтобы я мог передать нажатия мыши/клавиш в handle и усё.
Буду тебе очень благодарен 😊

Изменено пользователем alkayde123

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
1 час назад, alkayde123 сказал:

Есть какой-нибудь пример использования данной функции для handle?

Есть. В MSDN

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
3 часа назад, Xipho сказал:

Есть. В MSDN

К сожалению не нашел, про handle там вообще ничего нет, ну либо я слепой

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
В 20.07.2021 в 18:57, alkayde123 сказал:

На данный момент это сделано так, но работает сейчас только в активном окне :с

так сделай окно активным, самый быстрый и удобный вариант ведь🙂

 

 

Кстати, а в чём смысл писать на C# подобное? 

 

15 часов назад, Xipho сказал:

Есть

нет, SendInput работает со вводом вообще, для всей системы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
1 час назад, youneuoy сказал:

так сделай окно активным, самый быстрый и удобный вариант ведь🙂

Мне нужно, чтобы можно было игру свернуть и заниматься своими делами 🙂

 

1 час назад, youneuoy сказал:

нет, SendInput работает со вводом вообще, для всей системы.

Воооот, а мне нужно чисто для отправки в hWnd, есть что-нибудь подобное на примете?
У одного челика получилось реализовать такую тему, а у меня не выходит

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
1 час назад, alkayde123 сказал:

Мне нужно, чтобы можно было игру свернуть и заниматься своими делами 🙂

 

кликать нужно постоянно? Если нет то установи активное окно, покликай сколько нужно и восстанови старое. Если винда десятка то вероятно возможно открыть окно на отдельном рабочем столе(не проверял) или сделать что-то ещё подобное.

1 час назад, alkayde123 сказал:

У одного челика получилось реализовать такую тему, а у меня не выходит

если это правда, то мб он с кодом игры что-то делал. Разбирайся, что тут ещё можно сказать🤔

1 час назад, alkayde123 сказал:

Воооот, а мне нужно чисто для отправки в hWnd, есть что-нибудь подобное на примете?

есть. Но ты выше писал, что оно не работает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
10 часов назад, youneuoy сказал:

нет, SendInput работает со вводом вообще

Да, запамятовал. Давно под винду не кодил. 

 

9 часов назад, alkayde123 сказал:

Мне нужно, чтобы можно было игру свернуть и заниматься своими делами

Подними виртуалку, в ней подними игру, и саму виртуалку сверни. Для виртуалки окно останется активным, значит, изнутри виртуалки ты сможешь посылать своему окну сообщения любым способом.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
3 часа назад, Xipho сказал:

Подними виртуалку, в ней подними игру, и саму виртуалку сверни. Для виртуалки окно останется активным, значит, изнутри виртуалки ты сможешь посылать своему окну сообщения любым способом.

Слишком заморочено, я делаю бота под игры, для себя и для друзей, каждому ставить виртуалку такое себе)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
2 часа назад, alkayde123 сказал:

Слишком заморочено, я делаю бота под игры, для себя и для друзей

Попробуй посмотреть на AutoHotkey, она умеет по моему нажимать на свёрнутые окна, и можно очень просто делать программы, можно совместить с другой программой через файлы, например можно управлять ahk скриптами из C#, и всё такое, ну или нужно делать инъекцию кода в игру что бы имитировать кликанье...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Предпросмотр
Авторизация  

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.