Код
--lua
local ffi = require("ffi")
local user = ffi.load('User32.dll')
ffi.cdef[[
struct HWND__ { int unused; }; typedef struct HWND__ *HWND;
bool SetLayeredWindowAttributes(HWND hwnd, unsigned long crKey, unsigned char bAlpha, unsigned long dwFlags);
long GetWindowLongA(HWND hWnd, int nIndex);
long SetWindowLongA(HWND hWnd, int nIndex, long dwNewLong);
]]
local LWA_ALPHA, GWL_EXSTYLE, WS_EX_LAYERED = 2, -20, 524288
function transparency(hWnd, transp)
local h = ffi.cast('HWND', hWnd)
user.SetWindowLongA(h, GWL_EXSTYLE, bit.bor(user.GetWindowLongA(h, GWL_EXSTYLE), WS_EX_LAYERED))
user.SetLayeredWindowAttributes(h, 0, transp, LWA_ALPHA)
end
-- указать нужное окно Ctrl+A
transparency(workwindow(), 120) -- передавать хендл окна и уровень прозрачности от 0 до 255
wait (3000)
transparency(workwindow(), 255)
Прозрачность окна не влияет на клики left и нажатия send, также будут работать findimage/findcolor с типом поиска workwindow. Т. е. можно полностью скрыть окно, при этом можно искать картинки, делать клики и прочее.