В процессе разработки разработчики 1С иногда сталкиваются с крайне некомфортным поведением платформы: при пошаговом выполнении кода в режиме отладки (по нажатию клавиш F10 или F11) фокус ввода на каждом шаге принудительно активизирует окно клиентского приложения. В результате программисту приходится вручную переключаться обратно в окно Конфигуратора, чтобы увидеть следующую строку кода. Проанализируем причину возникновения этой проблемы и разберем способы её решения.
Основной причиной такого поведения является зарегистрированная ошибка платформы 1С:Предприятие с кодом 10185611. Эта ошибка часто проявляется на релизах ветки 8.3.10 (в частности, на версии 8.3.10.2466), а также на некоторых более ранних сборках.
Проблема проявляется в следующих ситуациях:
dwm.exe) — при смене активного процесса во время отладочного останова может принудительно возвращать передний план окну клиента.Конфигуратор и окно 1С:Предприятие запущены от имени разных пользователей или с разным уровнем прав (например, одно из окон запущено от имени администратора, а другое — в обычном режиме), операционная система блокирует передачу фокуса фоновому процессу.Разберем по шагам наиболее эффективный и официальный способ устранения проблемы. Так как ошибка зарегистрирована в официальном багборде 1С, фирма «1С» исправила её в релизах платформы начиная с версии 8.3.11.
8.3.10 или ниже, необходимо выполнить обновление технологической платформы до актуального релиза ветки 8.3.11 или более свежей.Если быстро обновить платформу на сервере или рабочей станции невозможно (например, из-за регламентов компании), рассмотрим обходное решение, связанное с настройкой операционной системы.
services.msc).dwm.exe).Обратите внимание: отключение DWM выключает визуальные эффекты интерфейса Windows (Aero), однако устраняет конфликт перехвата фокуса между клиентским сеансом 1С и Конфигуратором.
Проанализируем сопутствующие факторы, которые помогают избежать сброса фокуса при пошаговой отладке:
Конфигуратор и клиентский сеанс 1С:Предприятие запускались от одного и того же пользователя ОС с одинаковым уровнем прав UAC.Конфигуратора и окно 1С:Предприятие на разные физические мониторы, Windows перестает перекрывать окна, и фокус удерживается в отладчике корректно.1cv8.exe) в список исключений программ автоматической смены раскладки клавиатуры.