Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> Проблема с работой в 3 окна браузера
Idiot)
сообщение 3.11.2020, 18:08
Сообщение #1


*

Registred
Сообщений: 9
Регистрация: 26.7.2020
Группа: Пользователи
Наличность: 0
Пользователь №: 19.707
Возраст: 19



Всем привет. Случился такой фокус, из-за некоторых приколов в онлайн игре, приходится использовать 3 окна браузера на 1ом мониторе. 2 окна разделены на половину моника каждый к ним привязан кликер, также есть 3ье окно которое находится поверх всех(смотреть всякую фигню пока на первые 2 работает кликер). Вот в чём сама проблема, когда кликеру надо нажимать на первые окна оно их поднимает над тем на котором происходит всякая фигня от которой нельзя отвлекаться. В общем, незнает кто как сделать так чтоб оно не вылезало поверх главного окна?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 3.11.2020, 18:11
Сообщение #2


***********

Модератор UOPilot
Сообщений: 9.465
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27680
Пользователь №: 11.279



Это не пилот их поднимает. Это зачем-то в браузеры вкорячили функции вывода на передний план, если в них прилетел клик.
Варианты:
1) Установить на третье окно флаг поверх всех окон, первый два использовать в стандартном режиме.
2) Запихать первый два окна в виртуалку/rdp/астер.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Idiot)
сообщение 3.11.2020, 18:33
Сообщение #3


*

Registred
Сообщений: 9
Регистрация: 26.7.2020
Группа: Пользователи
Наличность: 0
Пользователь №: 19.707
Возраст: 19



Цитата(Idiot) @ 3.11.2020, 18:08) *

Всем привет. Случился такой фокус, из-за некоторых приколов в онлайн игре, приходится использовать 3 окна браузера на 1ом мониторе. 2 окна разделены на половину моника каждый к ним привязан кликер, также есть 3ье окно которое находится поверх всех(смотреть всякую фигню пока на первые 2 работает кликер). Вот в чём сама проблема, когда кликеру надо нажимать на первые окна оно их поднимает над тем на котором происходит всякая фигня от которой нельзя отвлекаться. В общем, незнает кто как сделать так чтоб оно не вылезало поверх главного окна?

Спасибо за инфу, пойду искать 1 идею в яндексе лучше, ибо не вижу её, а 2ой способ не подойдёт, ноут слабый да и я кроме виртуалки больше не знаю ни о чём из перечисленного
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 3.11.2020, 23:41
Сообщение #4


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26702
Пользователь №: 16.971
Возраст: 29



Цитата
Варианты:
1) Установить на третье окно флаг поверх всех окон

Код
--lua
local ffi = require("ffi")
local GA_ROOTOWNER = 3
local HWND_TOPMOST = -1
local SWP_NOMOVE = 0x0002
local SWP_NOSIZE = 0x0001
ffi.cdef[[ int GetAncestor(int hwnd, int gaFlags);
bool SetWindowPos(int hWnd, int hWndInsertAfter, int X, int Y, int cx, int cy, int uFlags); ]]

-- пилот версии 2.41
-- нажать Ctrl+A чтобы указать окно, которое должно быть поверх всех
-- запустить скрипт
ffi.C.SetWindowPos(ffi.C.GetAncestor(workwindow(), GA_ROOTOWNER), HWND_TOPMOST, 0, 0, 0, 0, bit.bor(SWP_NOMOVE, SWP_NOSIZE))
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 3.11.2020, 23:54
Сообщение #5


***********

Модератор UOPilot
Сообщений: 9.465
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27680
Пользователь №: 11.279



Тело функции SetWindowPos откуда берет? Типа из самого пилота в общем неймспейсе?


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 4.11.2020, 0:49
Сообщение #6


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26702
Пользователь №: 16.971
Возраст: 29



Цитата
Тело функции SetWindowPos откуда берет?

Цитата
ffi.C
the C runtime library LuaJIT was linked with (msvcrt*.dll), kernel32.dll, user32.dll and gdi32.dll.

Взято отсюда https://luajit.org/ext_ffi_api.html
Если функция в другой длл, то её нужно загружать ffi.load.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 4.11.2020, 1:30
Сообщение #7


***********

Модератор UOPilot
Сообщений: 9.465
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27680
Пользователь №: 11.279



Понятно. Как-то я упустил тот момент, что эти либы уже слинкованы - думал их загружать тоже надо.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 20.4.2024, 1:23
Designed by Nickostyle