К статье
Практический материал

Администрирование · 11 мин

Как запустить 1С в 32 разрядном режиме

Как запустить 1С в 32 разрядном режиме: выбор разрядности клиента, ключи командной строки, настройка сервера 1С и кластера, проверка результата и типичные ошибки.

Запуск 1С в 32 разрядном режиме требуется чаще всего из-за старых компонентов: COM-объектов, внешних компонент, драйверов торгового оборудования и библиотек обмена, которые собраны только под архитектуру x86. Если такой модуль загрузить в 64-разрядный клиент, программа выдаст ошибку загрузки внешней компоненты или просто не увидит оборудование. Вторая типичная причина — интеграция со сторонними программами через OLE/COM, когда партнёр по обмену существует только в 32-разрядной версии.

Важно понимать: разрядность задаётся на уровне конкретного исполняемого файла, а не информационной базы. Одна и та же база может открываться как 32-разрядным, так и 64-разрядным клиентом. Поэтому задача сводится к тому, чтобы установить нужную версию платформы, явно указать её при запуске и убедиться, что запустился именно 32-разрядный процесс.

Ниже разобраны все рабочие способы: выбор разрядности при установке, запуск тонкого и толстого клиента в 32 битах, ключи командной строки, настройка сервера 1С и кластера, а также проверка результата и разбор ошибок.

Когда действительно нужен 32-разрядный режим

Прежде чем менять конфигурацию запуска, убедитесь, что проблема именно в разрядности. 64-разрядный процесс Windows физически не может загрузить 32-разрядную DLL или COM-компонент — это ограничение операционной системы, а не платформы 1С. Поэтому признаки ситуации довольно характерные.

Типичный сценарий: после перехода на 64-разрядный клиент перестаёт работать обмен с банком, подключение кассового аппарата, сканера штрихкодов, загрузка внешней компоненты или OLE-соединение с другой программой. При этом та же база на старом компьютере работает нормально.

Ошибка загрузки внешней компонентыКомпонента собрана под x86

Проверьте, есть ли у поставщика 64-разрядная версия компоненты

Не виден сканер, ККТ, весыДрайвер оборудования 32-разрядный

Уточните разрядность драйвера у производителя устройства

Ошибка OLE/COM при обменеПрограмма-партнёр существует только в 32 битах

Проверьте, какая разрядность установлена у внешней программы

Всё работало на старом ПКСтарая платформа была 32-разрядной

Сравните разрядность платформы на старом и новом компьютере

Обратная ситуация тоже встречается: если база большая и клиенту не хватает памяти, 32-разрядный режим станет ограничением — процесс не сможет использовать более примерно 2 ГБ оперативной памяти. Для тяжёлых отчётов и крупных баз это критично, поэтому переводить всех пользователей на 32 бита «на всякий случай» не стоит.

Проверка текущей разрядности клиента и сервера

Перед изменениями зафиксируйте исходное состояние. Самый быстрый способ узнать разрядность запущенного клиента — открыть диспетчер задач Windows (Ctrl+Shift+Esc), найти процесс 1cv8.exe или 1cv8c.exe и посмотреть его описание: для 32-разрядного процесса рядом обычно указано «(32 бита)». Другой способ — в самой 1С открыть «Сервис» → «О программе» и посмотреть сведения о версии платформы и её архитектуре.

Также полезно посмотреть, какие версии платформы вообще установлены. По умолчанию 64-разрядная платформа ставится в «C:\Program Files\1cv8\», а 32-разрядная — в «C:\Program Files (x86)\1cv8\». Если папки «Program Files (x86)\1cv8» нет, 32-разрядная платформа не установлена, и сначала потребуется её инсталляция.

Установка 32-разрядной платформы рядом с 64-разрядной

Обе разрядности клиентской части спокойно сосуществуют на одном компьютере. Для установки запустите дистрибутив платформы нужной версии и на шаге выбора архитектуры укажите 32-разрядный вариант (в современных дистрибутивах установщик предлагает выбор; в старых поставках разрядность определялась отдельным дистрибутивом). Установите те же компоненты, что и для основной версии: тонкий клиент, толстый клиент, при необходимости — интерфейс и справку.

Важно, чтобы номер версии 32-разрядной платформы совпадал с версией, под которую рассчитана конфигурация и сервер. Смешивать, например, клиента 8.3.22 и сервер 8.3.18 нельзя — клиент откажется подключаться с сообщением о несовпадении версий.

Порядок установки 32-разрядного клиента
  1. 1
    Скачайте дистрибутив той же версии платформы, что используется в организации
  2. 2
    Запустите установку и выберите 32-разрядную архитектуру (x86)
  3. 3
    Отметьте нужные компоненты: тонкий и толстый клиент
  4. 4
    Завершите установку и проверьте наличие папки в Program Files (x86)\1cv8
  5. 5
    Запустите базу и проверьте разрядность процесса в диспетчере задач

Запуск файловой базы в 32-разрядном режиме

Выбор разрядности в списке баз

В стартере 1С (окно со списком информационных баз) выделите базу и нажмите «Изменить». В параметрах базы есть настройка разрядности клиента: «Использовать 64-разрядную версию» или вариант выбора приоритета. Установите 32-разрядный режим и сохраните. После этого двойной клик по базе будет запускать именно 32-разрядный клиент, если он установлен.

Прямой запуск исполняемого файла

Если настройка стартера недоступна или работает непредсказуемо, запустите нужный exe напрямую. Для толстого клиента это 1cv8.exe, для тонкого — 1cv8c.exe из каталога bin 32-разрядной платформы. Удобно создать ярлык на рабочем столе с явным путём и параметрами подключения.

cmd
"C:\Program Files (x86)\1cv8\8.3.22.1750\bin\1cv8.exe" ENTERPRISE /F"D:\Bases\Trade" /N"Иванов" /P"пароль"

Ключ ENTERPRISE задаёт режим запуска, /F — путь к файловой базе, /N и /P — имя пользователя и пароль. Для серверной базы вместо /F используются ключи /S\"Сервер\ИмяБазы\". Путь в кавычках обязателен, если в нём есть пробелы. Хранение пароля в ярлыке — компромисс: удобно, но пароль виден любому, кто откроет свойства ярлыка, поэтому на общих компьютерах ключ /P лучше не использовать.

32-разрядный режим на сервере 1С

Если 32-разрядные компоненты выполняются на стороне сервера (например, COM-объекты вызываются в серверных процедурах), менять клиент недостаточно — нужно настроить разрядность серверных процессов. Здесь есть два подхода.

Первый — установить 32-разрядную версию сервера 1С целиком. Это простое решение для небольших внедрений, но оно ограничивает память рабочих процессов и не подходит для нагруженных систем. Второй — оставить 64-разрядный сервер и добавить в кластер 32-разрядные рабочие процессы: в консоли администрирования кластера в свойствах рабочего процесса можно указать разрядность. Тогда 64-разрядные процессы обслуживают основную нагрузку, а 32-разрядные — вызовы устаревших компонент.

Сравнение вариантов

32-разрядный клиент на рабочем месте

Подходит, когда компоненты вызываются на клиенте: драйверы оборудования, OLE с локальными программами. Ограничение — около 2 ГБ памяти на процесс

Полностью 32-разрядный сервер

Простое решение для небольшой базы, где серверный код использует старые COM-компоненты. Не подходит при большой нагрузке из-за лимита памяти

64-битный сервер + 32-битные рабочие процессы

Гибридный вариант: основная нагрузка на 64 битах, совместимость обеспечивают отдельные 32-разрядные процессы. Требует настройки кластера

Замена компоненты на 64-разрядную

Самое правильное долгосрочное решение, если поставщик выпустил 64-разрядную версию драйвера или компоненты

Проверка результата и типичные ошибки

После настройки обязательно убедитесь, что запустился именно 32-разрядный процесс: откройте диспетчер задач и проверьте пометку «(32 бита)» у процесса 1cv8. Затем выполните операцию, которая раньше падала с ошибкой, — загрузку компоненты, подключение оборудования или обмен.

Контрольные точки

Как проверить результат

Процесс в диспетчере задач
Норма

1cv8.exe или 1cv8c.exe с пометкой (32 бита)

Тревожный признак

Процесс 64-разрядный — запуск идёт не из той папки или настройка базы не сохранена

Загрузка внешней компоненты
Норма

Компонента подключается, функции доступны

Тревожный признак

Ошибка загрузки сохраняется — компонента не зарегистрирована или несовместима с версией платформы

Работа оборудования
Норма

Сканер/ККТ определяется и отвечает

Тревожный признак

Устройство не видно — драйвер не установлен или тоже несовместим

Потребление памяти
Норма

Процесс работает стабильно в пределах задач

Тревожный признак

Ошибки нехватки памяти на тяжёлых отчётах — 32 бита не хватает, нужен 64-битный клиент

Типичные ошибки
01
Установка 32-разрядной платформы другой версии — клиент не подключается к серверу из-за несовпадения версий
02
Запуск ярлыка из папки bin 64-разрядной платформы — пользователь думает, что работает в 32 битах, а процесс 64-разрядный
03
Перевод всех пользователей на 32 бита из-за одного старого драйвера — на тяжёлых отчётах начинаются ошибки нехватки памяти
04
Попытка зарегистрировать 32-разрядную COM-компоненту через 64-разрядную regsvr32 — регистрация проходит не в тот раздел реестра
05
Хранение пароля в ярлыке на общедоступном компьютере — учётные данные видны всем

Отдельная тонкость касается регистрации COM-компонент. На 64-разрядной Windows 32-разрядная DLL регистрируется через regsvr32 из папки SysWOW64, а 64-разрядная — из System32. Если зарегистрировать компоненту «не той» утилитой, 32-разрядный клиент её не увидит, даже если сама регистрация завершилась без ошибок.

FAQ

Можно ли одновременно держать 32- и 64-разрядную платформу на одном компьютере?

Да, это штатный сценарий. Они устанавливаются в разные каталоги (Program Files и Program Files (x86)) и не конфликтуют. В списке баз для каждой базы можно задать свою разрядность запуска.

Будет ли 32-разрядный клиент работать на 64-разрядной Windows?

Будет. 64-разрядная Windows исполняет 32-разрядные программы через подсистему WoW64, и для 1С это полностью поддерживаемый режим. Обратное невозможно: 64-разрядный клиент на 32-разрядной Windows не запустится.

Почему после перехода на 32 бита стали появляться ошибки нехватки памяти?

32-разрядный процесс ограничен примерно 2 ГБ адресного пространства независимо от объёма оперативной памяти в компьютере. Тяжёлые отчёты, большие выгрузки и массовые обработки могут в этот лимит не помещаться. Решение — вернуться на 64-разрядный клиент для таких задач, а 32-разрядный оставить только там, где нужны старые компоненты.

Нужно ли конвертировать базу данных при смене разрядности?

Нет. Разрядность относится только к исполняемым файлам платформы. Данные, конфигурация и настройки базы одинаково доступны обоим клиентам, конвертация и выгрузка не требуются.

Как заставить веб-клиент работать в 32-разрядном режиме?

Веб-клиент выполняется в браузере, и его разрядность определяется разрядностью самого браузера и веб-сервера, а не платформы 1С. Если требуется 32-разрядная компонента на клиенте, используйте тонкий или толстый клиент; для серверных вызовов настройте 32-разрядные рабочие процессы кластера.

Что делать, если поставщик компоненты не выпускает 64-разрядную версию?

Рабочие варианты: оставить один 32-разрядный клиент для операций с этой компонентой, вынести её вызовы в 32-разрядные рабочие процессы кластера или заменить компоненту альтернативным решением. Постепенно стоит планировать отказ от такой компоненты, поскольку экосистема переходит на 64 бита.

Итог

Что важно запомнить

32-разрядный режим 1С нужен для совместимости со старыми компонентами, драйверами и COM-объектами. Для клиента достаточно установить 32-разрядную платформу той же версии и указать её в настройках базы или ярлыке; для сервера разрядность задаётся при установке или в свойствах рабочих процессов кластера. Всегда проверяйте разрядность запущенного процесса в диспетчере задач и помните про лимит памяти около 2 ГБ на 32-разрядный процесс.