Тема: AHK: Спрятать окно с помощью WinApi
Здравствуйте!
На зарубежном форуме мне посоветовали способ спрятать окно через WinApi Dll:
Gui, Show, w500 h500
F10::
{
WinGet, hwnd, ID, A
SetWindowCloaked(hwnd)
SetWindowCloaked(hwnd, cloak=1) {
; DWMWA_CLOAK = 13
DllCall("Dwmapi\DwmSetWindowAttribute", "Ptr", hwnd, "UInt", 13, "Int*", cloak, "UInt", 4) ; Прячем окно.
Sleep 1000
DllCall("Dwmapi\DwmSetWindowAttribute", "Ptr", hwnd, "UInt", 13, "Int*", 0, "UInt", 4) ; Отображаем окно.
}
return
}
Зачем я добавил строчку "Gui, Show, w500 h500": Чтобы продемонстрировать проблему.
Проблема заключается в том, что родное окно от скрипта выполняет вызов DllCall успешно и прячет окно, затем вновь отображает.
Если использовать этот же скрипт в любых других окнах, он почему-то не работает.
Можно ли это как-то исправить или это невозможно?