Что нового

[Процессы] Как "мягко" закрыть приложение, не убивая процесс?

m4e

Новичок
Сообщения
21
Репутация
0
пробую - ProcessClose("123.exe"), однако остаются висеть иконки в трее, их потом копится целая куча.

подскажите более элегантрый способ, пожалуйста.
 

MnM

Post-Hardcore
Сообщения
679
Репутация
90
Опишите в красках m4e, что у вас случилось.
После тестовых скриптов остаются иконки в трее?
 
Автор
M

m4e

Новичок
Сообщения
21
Репутация
0
Есть вот такие пять окон (видно в диспетчере). Информация об одном из них в окне.
Их нужно закрывать раз в шесть часов. (это я через планировщик сделаю).

Нашел такой кусок для блокнота, как бы его применить к моей задачи?

Код:
$aListNotepad = WinList('[Class:Notepad]')
If $aListNotepad[0][0] Then
    For $i = 1 To $aListNotepad[0][0]
        WinClose($aListNotepad[$i][1])
    Next



image.png
 

MnM

Post-Hardcore
Сообщения
679
Репутация
90
Код:
$listWin=WinList();В скобках заголовок у окон(сам не напишу длинные они у вас)
for $i=1 to $listWin[0][0]
	WinClose($listWin[$i][1])
Next

Попробуйте
 
Автор
M

m4e

Новичок
Сообщения
21
Репутация
0
Title: [localhost:7010] XWeb Human Emulator (MT)

Если вы имеете ввиду этот заголовок, то он отличается у разных программ (там порты разные - 7010-7015). Может как-то на переменную заменить?
 

---Zak---

Скриптер
Сообщения
455
Репутация
120
2 m4e
Не обязательно указывать весь title - можно указать и часть...

Например: 'XWeb Human Emulator'
 
Автор
M

m4e

Новичок
Сообщения
21
Репутация
0
Часть не прокатывает - окна продолжают работать.
Попробовал как-то так, но тоже не работает

Код:
$port = 7010;
$listWin=WinList("[localhost:$port] XWeb Human Emulator (MT)")
for $i=1 to $listWin[0][0]
    WinClose($listWin[$i][1])
	$port=$port+1;
Next
 

---Zak---

Скриптер
Сообщения
455
Репутация
120
Код:
Opt("WinTitleMatchMode", 2) ; 2 = Match any substring in the title

$listWin = WinList('XWeb Human Emulator')
For $i=1 To $listWin[0][0]
    WinClose($listWin[$i][1])
Next


Попробовал как-то так, но тоже не работает
Код:
$listWin=WinList("[localhost:"&$port&"] XWeb Human Emulator (MT)")
 
Автор
M

m4e

Новичок
Сообщения
21
Репутация
0
вот чувствуется рука мастера! Перфекто! А не могли бы вы рассказать, что делает первая сточка?
 

---Zak---

Скриптер
Сообщения
455
Репутация
120
m4e
Я не мастер - я еще только учусь))))

А ты нажми на саму функцию и посмотри раздел Option:
Код:
Opt

Далее найди 'WinTitleMatchMode' и почитай что она еще может...
 
Автор
M

m4e

Новичок
Сообщения
21
Репутация
0
круто ) У меня вторая проблема - если скрипт выполнять с рабочего стола руками, все работает хорошо, окна с программой запускаются и открываются на рабочем столе, а если через планировщик, то процесс виден в диспетчере задач, а окна не появляются. Как будто она запускается в каком-то стелс-режиме.
 

miron50

Новичок
Сообщения
6
Репутация
0
А ты под каким пользователем его запускаешь ??? Быстрее всего они не совпадают с тем который сейчас залогинился

ЗЫ. Если еще актуально :smile:
 
Верх