AkulaBig
|
Posted: Fri Feb 13, 2026 12:25 Post subject: |
|
|
Orion9
Вы у нас единственный остались на замену автору Кстати, не в курсе, куда он так надолго исчез?
Решил побаловаться с наг-скрином ТС. Теперь не надо применять дополнительные плагины. И работа не зависит от видеокарты и драйверов. Все известные плагины по нажиманию кнопок на наг-скрине глючат на определенных видеокартах и драйверах.
| Code: |
Pragma Include %COMMANDER_PATH%\Plugins\wdx\Autorun\NagScreen.aucfg
# NagScreen.aucfg
# ================================ Описание ================================
# Нажимает кнопку на наг-скрине.
# ================================= Примеры ================================
# Для использования скрипта в плагине Total Commander Autorun, необходимо
# включить NagScreen.aucfg в файл autorun.cfg:
# Pragma Include %COMMANDER_PATH%\Plugins\wdx\Autorun\NagScreen.aucfg
# ==============================================================================
# ============================== Description ===============================
# Presses a button on the nagscreen.
# ================================= Example ================================
# To use script in plugin Total Commander Autorun, it is possible enable
# NagScreen.aucfg:
# Pragma Include %COMMANDER_PATH%\Plugins\wdx\Autorun\NagScreen.aucfg
# ==============================================================================
Local hWnd, nTimeOut = 2000
While nTimeOut > 0
If FileExist(COMMANDER_PATH & "\wincmd.key") Then
Break
EndIf
# Находим окно наг-скрина
# Find the nagscreen window
hNagScreen = WinFind(WinFind(WinFind(WinFind(WinFind(0, 'TNASTYNAGSCREEN'), _
auX64 ? "Window" : "TNotebook"), _
auX64 ? "Window" : "TPage"), _
auX64 ? "Window" : "TPanel"), _
auX64 ? "Window" : "TPanel")
If hNagScreen > 0 Then
# Определяем хэндлы кнопок для закрытия окна наг-скрина
# Define button handles for closing the nagscreen window
hButton3 = DllCall("GetWindow", "hwnd", hNagScreen, "uint", 2, "hwnd")
hButton2 = DllCall("GetWindow", "hwnd", hButton3, "uint", 2, "hwnd")
hButton1 = DllCall("GetWindow", "hwnd", hButton2, "uint", 2, "hwnd")
# Имитация клика ЛКМ
# Simulate LMB click
BM_CLICK = 245
# Нажимаем кнопку для закрытия окна наг-скрина
# Press the button to close the nagscreen window
Switch WinGetText(hNagScreen)
Case '3'
SendMessage(hButton3, BM_CLICK, 0, 0)
Case '2'
SendMessage(hButton2, BM_CLICK, 0, 0)
Case '1'
SendMessage(hButton1, BM_CLICK, 0, 0)
EndSwitch
Break
EndIf
Sleep(50)
nTimeOut -= 50
Wend
|
Чтобы не плодить сообщения, вставил в этот пост правильный код.
Last edited by AkulaBig on Fri Feb 20, 2026 16:53; edited 4 times in total |
|