Что за координаты "4591336,0" я без понятия, но такие дикие цифры бывают при полноэкранных, а не оконных режимах.
При свёрнутом окне координаты (-32000, -32000)
Во первых, зачем там WHILE? Простого условия достаточно. Да, и зачем там два условия отлавливающих одно и то же, достаточно одного
Попробуй ставить не через wndpos, а WNDSETINFO.
Ну и последнее, костыль, проверяй не только на ноль, но и на 4591336.
// через WNDPOS
$hwnd_win = WNDFIND("Total")
WNDGETINFO($hwnd_win, $wx, $wy, $ww, $wh)
print("win coord: ", $wx, "/", $wy, " ", $ww, "x", $wh)
IF(($wx ! 0) & ($wy ! 0))
WNDSTATE($hwnd_win, 1)
WNDBUMP($hwnd_win)
WNDSIZE($hwnd_win, 800, 600)
WNDPOS($hwnd_win, 0, 0)
WAITMS(500)
WNDGETINFO($hwnd_win, $wx, $wy, $ww, $wh)
print("win coord: ", $wx, "/", $wy, " ", $ww, "x", $wh)
END_IF
HALT
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// через WNDSETINFO
$hwnd_win = WNDFIND("Total")
WNDGETINFO($hwnd_win, $wx, $wy, $ww, $wh4)
print("win coord: ", $wx, "/", $wy, " ", $ww, "x", $wh)
IF(($wx ! 0) & ($wy ! 0))
WNDSTATE($hwnd_win, 1)
WNDBUMP($hwnd_win)
WNDSETINFO($hwnd_win, 0, 0, 800, 600)
WAITMS(500)
WNDGETINFO($hwnd_win, $wx, $wy, $ww, $wh)
print("win coord: ", $wx, "/", $wy, " ", $ww, "x", $wh)
END_IF
HALT
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// через WNDSETINFO с костылём
$hwnd_win = WNDFIND("Total")
WNDGETINFO($hwnd_win, $wx, $wy, $ww, $wh)
print("win coord: ", $wx, "/", $wy, " ", $ww, "x", $wh)
IF(($wx ! 0) & ($wx < 10000) & ($wy ! 0))
WNDSTATE($hwnd_win, 1)
WNDBUMP($hwnd_win)
WNDSETINFO($hwnd_win, 0, 0, 800, 600)
WAITMS(500)
WNDGETINFO($hwnd_win, $wx, $wy, $ww, $wh)
print("win coord: ", $wx, "/", $wy, " ", $ww, "x", $wh)
END_IF
HALT
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~