Ситуация такая:
Есть программа, которая при завершении всех действий с ней, не высвобождает используемую память, и при последующем продолжении работы в ней, ещё больше под себя резервирует, что в итоге делает её ужасно прожорливой. Было замечено, что обычная процедура - свернуть-развернуть окно - делает необходимое высвобождение памяти, и снижает объём используемой памяти с 400 Мб до 40 Мб. Нужен скрипт, который делает процедуру "свернуть-развернуть окно" через заданный промежуток времени, а так же прекращал свою работу после закрытия окна той программы.
Пролистав справку, у меня почти получился нужный скрипт, но он делает Exit по истечении значения sleep, а это не устраивает - нужно чтобы Exit срабатывал сразу, как закроется программа.
На примере Блокнота - скрипт должен запустить программу notepad.exe и каждые 20 секунд должен делать ему "свернуть-развернуть". При этом, если закрыть notepad.exe - скрипт должен завершить свою работу. В моём примере завершение работы скрипта происходит по истечении времени, указаному в sleep (20 секунд), а это не устраивает, т.к. это значение может быть и 30 минут и 60 минут. Так долго ждать завершения работы скрипта - не устраивает!
Помогите оптимизировать! Спасибо!
Есть программа, которая при завершении всех действий с ней, не высвобождает используемую память, и при последующем продолжении работы в ней, ещё больше под себя резервирует, что в итоге делает её ужасно прожорливой. Было замечено, что обычная процедура - свернуть-развернуть окно - делает необходимое высвобождение памяти, и снижает объём используемой памяти с 400 Мб до 40 Мб. Нужен скрипт, который делает процедуру "свернуть-развернуть окно" через заданный промежуток времени, а так же прекращал свою работу после закрытия окна той программы.
Пролистав справку, у меня почти получился нужный скрипт, но он делает Exit по истечении значения sleep, а это не устраивает - нужно чтобы Exit срабатывал сразу, как закроется программа.
На примере Блокнота - скрипт должен запустить программу notepad.exe и каждые 20 секунд должен делать ему "свернуть-развернуть". При этом, если закрыть notepad.exe - скрипт должен завершить свою работу. В моём примере завершение работы скрипта происходит по истечении времени, указаному в sleep (20 секунд), а это не устраивает, т.к. это значение может быть и 30 минут и 60 минут. Так долго ждать завершения работы скрипта - не устраивает!
Помогите оптимизировать! Спасибо!
Код:
Run("Notepad.exe", "", @SW_MAXIMIZE)
while 1
WinSetState("Безымянный", "", @SW_MINIMIZE)
WinSetState("Безымянный", "", @SW_MAXIMIZE)
WinActivate("Безымянный", "")
Sleep(20000)
If ProcessExists("notepad.exe") = 0 Then Exit
wend