Esta é uma pequena atualização / alteração do script AutoHotkey acima de harrymc respondeu em 8 de abril de 2014 às 7:17 . Muito obrigado por isso. Eu adicionei um manipulador de exceção e que as janelas não podem ser usadas maximizadas:
#Persistent
#SingleInstance,force
SetTimer, DrawRect, 50
border_thickness = 6
border_color = FF0000
DrawRect:
WinGetPos, x, y, w, h, A
WinGet, OutputVar , MinMax, A
; make maximized windows movable
; -1: The window is minimized (WinRestore can unminimize it).
; 1: The window
; is maximized (WinRestore can unmaximize it).
;0: The window is neither minimized nor maximized.
if(OutputVar == 1){
WinGetPos,x,y,w,h
WinRestore,A
Sleep,500
WinMove,A,,% x + 3, % y + 3, % A_ScreenWidth - 199, % A_ScreenHeight - 199
}
Gui, +Lastfound +AlwaysOnTop +Toolwindow
iw:= w+4
ih:= h + 4
w:=w+ 8
h:=h + 8
x:= x - border_thickness
y:= y - border_thickness
Gui, Color, FF0000
Gui, -Caption
WinSet, Region, 0-0 %w%-0 %w%-%h% 0-%h% 0-0 %border_thickness%-%border_thickness% %iw%-%border_thickness% %iw%-%ih% %border_thickness%-%ih% %border_thickness%-%border_thickness%
try{
Gui, Show, w%w% h%h% x%x% y%y% NoActivate, Table awaiting Action
} catch {
Sleep,2000
}
return
Para explicar as alterações: Quando fechei as guias no Google Chrome, espalhadas pelos meus quatro monitores, via Controle + w, ocasionalmente eu fechava as erradas. Solução pesquisada e encontrada ontem nesta página. Depois de apenas alguns minutos eu recebi uma exceção quando abri a janela "Salvar como" do notepad ++. Esta exceção é agora interceptada via try, catch block. Além disso, eu tive o problema que eu não vi o quadro vermelho em janelas maximizadas e, portanto, eu restaurar janelas maximizadas dentro de "if (OutputVar == 1) {...".