Іноді неможливо закрити вікно 1С програмно з самої 1С (наприклад, є модальні вікна типу питання і попередження). У таких випадках застосовується зовнішня програма, що вбиває процес по імені який створив його файлу. Але в такому випадку будуть завершені всі процеси (закриті вікна), створені цим файлом (наприклад, всі запущені бази і конфігуратор). Справжня програма "вбиває" процес вибірково, по заголовку вікна належить цьому процесу
Принцип роботи:
- шукаються всі процеси, створені додатком, що містить в імені 1CV (тобто будь-які версії 1С)
- шукаються всі вікна знайдених процесів і зчитуються їх заголовки
- якщо заголовок вікна збігається з єдиною рядком ini-файлу (Kill1CProcWnd.ini), то побивається цей конкретний процес
- сама програма закривається в будь-якому випадку (після "убивства", або якщо умови не співпали)
завантажити файли
а це не спортивно використовувати?
опис:
Ця команда дозволяє завершити один або кілька процесів.
Процес може бути завершений на ім'я образу або за ідентифікатором процесу.
Список параметрів:
/ S <система> Підключається віддалений комп'ютер.
/ U [<домен>\]<пользователь> Призначений для користувача контекст, в якому
повинна виконуватися ця команда.
/ P <пароль> Пароль для цього користувача контексту.
Запитує пароль, якщо він не заданий.
/ F Примусове завершення процесу
/ FI <фильтр> Відображення завдань, що відповідають
вказаною в фільтрі критерієм.
/ PID <процесс> Ідентифікатор процесу, який потрібно
завершити.
/ IM <образ> Ім'я образу процесу, який потрібно
завершити. Для вказівки всіх процесів
можна використовувати символ шаблону "*".
/ T Завершення зазначеного процесу
і всіх його дочірніх процесів.
/? Висновок довідки з використання.
фільтри:
Ім'я фільтра Допустимі оператори Допустимі значення
----------- -------------------- -------------------
STATUS eq, ne RUNNING | NOT RESPONDING
IMAGENAME eq, ne Ім'я образу
PID eq, ne, gt, lt, ge, le Значення PID
SESSION eq, ne, gt, lt, ge, le Номер сесії
CPUTIME eq, ne, gt, lt, ge, le Час CPU в форматі
hh: mm: ss.
hh - годинник,
mm - хвилини, ss - секунди
MEMUSAGE eq, ne, gt, lt, ge, le Використання пам'яті в КБ
USERNAME eq, ne Ім'я користувача в форматі
[<домен>\]<пользователь>
MODULES eq, ne Ім'я DLL
SERVICES eq, ne Ім'я служби
[B] WINDOWTITLE eq, ne Заголовок вікна [b]
Примітка: Символ '*' для параметра / IM застосуємо тільки спільно з фільтрами.
Примітка: Завершення віддалених процесів завжди буде примусовим,
незалежно від того, чи був використаний параметр / F чи ні.
приклади:
TASKKILL / S <система> / F / IM notepad.exe / T
TASKKILL / PID 1230 / PID 1241 / PID 1253 / T
TASKKILL / F / IM notepad.exe / IM mspaint.exe
TASKKILL / F / FI "PID ge 1000" / FI "WINDOWTITLE ne untitle *"
TASKKILL / F / FI "USERNAME eq NT AUTHORITY \ SYSTEM" / IM notepad.exe
TASKKILL / S <система> / U <домен>\<пользователь> / FI "USERNAME ne NT *" / IM *
TASKKILL / S <система> / U <пользователь> / P <пароль> / FI "IMAGENAME eq note *"