При работе в терминальном режиме (RDP) разработчики часто сталкиваются с парадоксальной ситуацией: Конфигуратор успешно запущен, база выбрана из списка, однако при нажатии кнопки «Начать отладку» система выдает ошибку, сообщая, что список баз пуст. При этом сеанс «1С:Предприятие» либо не запускается вовсе, либо запускается в пустом окне выбора баз. Рассмотрим подробнее причины этого поведения и разберем по шагам методы решения данной проблемы.
Для начала проанализируем ситуацию. Когда мы нажимаем кнопку запуска отладки, Конфигуратор инициирует создание нового процесса 1cv8.exe. Этот новый процесс должен получить параметры запуска от родительского процесса, включая путь к информационной базе. Если в терминальной сессии настроены перенаправления папок (Folder Redirection) или используются перемещаемые профили, дочерний процесс может потерять контекст и обратиться к стандартным путям %APPDATA%, где файл ibases.v8i оказывается пустым или недоступным.
Выясним причину через проверку основного файла настроек. Список баз для каждого пользователя хранится в файле ibases.v8i. В терминальной среде путь к этому файлу может динамически меняться. Разберем, где именно искать проблему:
%APPDATA%\1C\1CEStart\ibases.v8i.Если файл доступен, но система его «не видит» при запуске отладки, это может означать, что Конфигуратор запущен с правами администратора, а пользовательская сессия работает с обычными правами. В Windows Server это приводит к разделению путей AppData.
Посмотрим на настройки общего запуска. Файл 1CEStart.cfg определяет поведение программы при старте. Он может находиться как в %ProgramData%, так и в %AppData%. Проанализируем типичное содержимое этого файла:
CommonInfoBases=C:\CommonData\1C\shared_bases.v8i
InstalledLocation=C:\Program Files\1cv8
DefaultVersion=8.3.22.1709
Если в параметре CommonInfoBases указан сетевой путь или путь, требующий особых разрешений, процесс отладки может не суметь прочитать его при запуске. Рекомендуется временно закомментировать строку с общими базами и проверить, решится ли проблема с локальным списком. Также важно убедиться, что параметр InstalledLocation указывает на корректный каталог установки платформы.
Поскольку проблема часто сопровождается тем, что даже при ручном подключении клиента точки останова не срабатывают, разберем настройку протокола TCP. В RDP-сессии несколько пользователей могут одновременно пытаться занять одни и те же порты. По умолчанию 1С использует диапазон портов 1560–1591.
Для исправления ситуации выполним следующие действия:
1cv8.exe.Важный момент: если на сервере работает много разработчиков, портов в стандартном диапазоне может не хватить. Попробуйте расширить диапазон или явно назначить порт для своего сеанса.
Рассмотрим подробнее ситуацию с правами. Если вы запускаете ярлык 1С «От имени администратора», операционная система создает процесс в другом контексте безопасности. Это часто приводит к тому, что сетевые диски, подключенные в обычном сеансе пользователя, становятся невидимыми для программы. Поскольку список баз часто ссылается на пути к файловым базам через эти диски, «Предприятие» при запуске из «админского» Конфигуратора не может их найти и отображает пустой список.
Совет: Всегда запускайте Конфигуратор с теми же правами, с которыми работает ваша пользовательская сессия в RDP.
Иногда причиной странного поведения становятся поврежденные временные файлы. Выполним полную очистку кэша по следующему алгоритму:
%AppData%\1C\1Cv8%LocalAppData%\1C\1Cv8eb456...).1cv8str.lst. Если он поврежден, его стоит удалить — система создаст новый.Также проанализируем ветку реестра, где хранятся настройки окна запуска:
HKEY_CURRENT_USER\Software\1C\1Cv8\8.3\Common\v8i
Если там скопилось слишком много некорректных записей о последних базах, это может сбивать алгоритм автоматического выбора базы при отладке.
Выясним, не установлены ли на сервере одновременно 32-битная и 64-битная версии платформы. Бывают случаи, когда Конфигуратор (например, x64) пытается вызвать клиентское приложение, но из-за настроек в 1CEStart.cfg или в параметрах самой базы запускается версия другой разрядности. Это может привести к потере параметров командной строки.
Чтобы исключить это, в списке баз нажмем «Изменить», перейдем на последнюю закладку и в поле «Версия платформы» жестко пропишем номер сборки и разрядность, например: 8.3.22.1709 /x86_64.
Если настройки TCP и прав доступа не помогают, рассмотрим более современный и стабильный вариант — HTTP-отладку. Этот протокол гораздо устойчивее к особенностям терминальных сессий, так как использует стандартный веб-протокол через специальный сервер отладки.
Для настройки выполним следующее:
http://localhost:1550).Проанализируем преимущества: HTTP-отладка не зависит от «видимости» списка баз в дочернем процессе так сильно, как TCP, поскольку связь устанавливается через централизованный узел. Это практически всегда решает проблему «невидимых» точек останова в RDP.
Мы разобрали основные причины возникновения ошибки «Список баз пуст» при запуске отладки в терминальном режиме. Основными факторами являются права доступа к профилю пользователя, блокировки файлов списка баз и специфика работы портов в RDP. Последовательное выполнение описанных шагов — от проверки прав на ibases.v8i до перехода на HTTP-отладку — позволяет полностью восстановить работоспособность среды разработки.