Версия для печати темы (https://pro1c.org.ua/index.php?s=89bd2867712af196f553b891809ec673&showtopic=26358)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Утилиты, программки, общее для 1С 7 и 8 _ Программа (Сервис) закрытия 1С в терминальных сессиях

Автор: mister-x 16.11.15, 11:15

Закрытие 1с в терминальных сессиях при разрыве связи или по таймауту завершения сессии, вызывает простое уничтожение процесса 1с. В связи с этим не сохраняются открытые на редактирование документы и программа завершается аварийно, что требует потом определенных мер по устранению таких сбоев, например переиндексация базы. Для закрытия 1с штатным образом используйте эту программу.

Работа в качестве сервиса:

Сервис каждые 30 сек. проверяет состояние терминальных сессий, и в случае когда состояние равно «Отключена» запускает в отключенной сессии «Close1s.exe» с ключом –close.

Close1s.exe с ключом –close имитирует работу пользователя по закрытию 1С, ищет процесс с именем 1cv7* или 1cv8* находит его окно, посылается команда закрытия окна 1С, если всплывают диалоги закрытия или о сохранении изменений в 1С, то на вопросы отвечается утвердительно «Да» , 1С завершает работу штатным методом. Если в течении 10 сек. так и не удалось завершить 1С (в случаях когда 1С зависла и не отвечает на действия пользователя) процесс 1С уничтожается.



Примеры использования программы «Close1s.exe»:

Для инсталляции сервиса можно скопировать «Close1s.exe» в папку C:\WINDOWS, затем выполнить команду инсталляции сервиса «Пуск» - «Выполнить»- «C:\WINDOWS\ Close1s.exe -install». Сервис установится с именем «Закрытие 1С при отключении сессии».

Для удаления сервиса выполните команду «Пуск» - «Выполнить»- «C:\WINDOWS\ Close1s.exe -uninstall».

Есть возможность использовать «Close1s.exe» не в качестве сервиса, а как программу (например для использования в своих скриптах или батниках, с ключом «-close»), для этого выполните команду «Пуск» - «Выполнить»- «C:\WINDOWS\ Close1s.exe -close».





Дополнение, о настройках терминального сервера:

В настройке службы терминалов («Пуск» - «Все программы»-«Администрирование»-«Настройка служб терминалов» или «Пуск» - «Выполнить»- «%SystemRoot%\system32\tscc.msc /s»)


В своиствах RDP-Tcp на закладке «Сеансы» поставить галочку «Заменить параметры пользователя», выбрать «Завершение отключенного сеанса» 1 мин. или больше, поставить галочку «Заменить параметры пользователя При превышении ограничений или разрыве подключения», выбрать «Отключить сеанс».


Обновление:
+ добавлены настройки ini файл:
[options]
to_answer_the_question=1
interval_of_session_inactivity=0
wait_before_killing=10


описание параметров:
to_answer_the_question - отвечать на вопросы 1=Да, 0=Нет .
interval_of_session_inactivity - интервала неактивности отключонной сессии в минутах, если 0=сразу
wait_before_killing - ожидание в секундах перед уничтожением процеса 1С (если не смогли выключить).

+ Настройки ini файла лежащий рядом с exe действует на всех пользователей,
для индивидуальной настроки пользователей разместите ini файл в каталоге пользователя
например пользователю User: « C:\Documents and Settings\User\Close1s.ini».



Обновление от 22.05.2013:

+ изменен алгоритм по кнопкам, теперь учитываются диалоговые окна: «Да/Нет», « Ок/Отмена», «Ок» и т.д.

http://pro1c.org.ua/redirect.php?http://infostart.ru/public/185563/

 Close1S_v3.zip ( 323,33 килобайт ) : 846

Автор: stas0285 28.12.16, 11:18

Как открыть архив, какой пароль? mister-x @ 16.11.15, 11:15 * ,

Автор: cos12 28.12.16, 13:28

stas0285 @ Сегодня, 11:18 * ,
в правилах форума пароль, прочтите правила

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua