Администрирование · 11 мин
Как узнать разрядность платформы 1С
Как определить разрядность платформы 1С (32 или 64 бита): через диспетчер задач, папку установки, реестр и консоль сервера. Пошаговые инструкции и ответы на вопросы.
Разрядность платформы 1С — это параметр, который определяет, сколько памяти может использовать процесс и какие внешние компоненты совместимы с программой. От неё зависит, будет ли работать драйвер оборудования, COM-соединение, внешняя компонента или обработка, загружающая DLL. Поэтому проверить разрядность нужно до установки обновлений, подключения торгового оборудования или переноса базы на новый сервер.
Платформа 1С:Предприятие 8.3 выпускается в двух вариантах: 32-разрядном (x86) и 64-разрядном (x86-64). На одном компьютере могут быть установлены обе версии одновременно, при этом они не конфликтуют — просто лежат в разных каталогах. Проблема в том, что при запуске базы пользователь часто не знает, какая именно из них стартовала.
Есть несколько надёжных способов определить разрядность: через диспетчер задач Windows, по пути установки, через командную строку, в консоли кластера серверов 1С и программно — из встроенного языка. Ниже разобран каждый метод с пошаговыми действиями и признаками, по которым можно проверить результат.
Что означает разрядность платформы и когда её нужно проверять
Разрядность (битность) показывает, какой набор инструкций процессора использует программа и сколько оперативной памяти она может адресовать. 32-разрядный процесс ограничен примерно 2–4 ГБ адресного пространства на процесс, 64-разрядный такого ограничения практически не имеет. Для файловых баз небольшого размера разница малозаметна, но для серверных решений и тяжёлых отчётов она критична.
Проверять разрядность необходимо в нескольких типовых ситуациях: при установке драйверов торгового оборудования (многие из них собраны только под 32 бита), при подключении внешних компонент и DLL, при настройке COM-соединений между базами, при переносе сервера 1С на новую машину и при возникновении ошибок вида «несоответствие разрядности» или «ошибка загрузки компоненты».
Как определить разрядность через диспетчер задач Windows
Это самый быстрый способ, который не требует никаких прав и работает на любой клиентской машине. Он показывает разрядность именно того процесса, который запущен прямо сейчас, — что важно, если на компьютере установлено несколько версий платформы.
Запустите 1С в режиме предприятия или конфигуратора, затем нажмите Ctrl+Shift+Esc и перейдите на вкладку «Подробности». Найдите процесс 1cv8.exe (толстый клиент), 1cv8c.exe (тонкий клиент) или 1cv8s.exe. Если рядом с именем стоит пометка «(32 бита)» — платформа 32-разрядная. Если пометки нет, а система 64-разрядная — процесс работает в 64-битном режиме.
- 1Запустите информационную базу 1С
- 2Откройте диспетчер задач сочетанием Ctrl+Shift+Esc
- 3Перейдите на вкладку «Подробности»
- 4Найдите процесс 1cv8.exe или 1cv8c.exe
- 5Проверьте наличие пометки «(32 бита)»: она есть — платформа 32-битная, её нет — 64-битная
На старых версиях Windows вкладка может называться «Процессы», и пометка выглядит как «*32» после имени процесса. Логика та же: суффикс означает 32-разрядный процесс, запущенный в подсистеме WOW64.
Как определить разрядность по папке установки
Windows раскладывает программы разной разрядности по разным системным каталогам. 64-разрядные приложения устанавливаются в C:\Program Files, а 32-разрядные — в C:\Program Files (x86). Платформа 1С следует этому правилу, поэтому путь к исполняемому файлу однозначно отвечает на вопрос.
Чтобы узнать путь, откройте окно запуска 1С (стартер со списком баз), выделите базу и посмотрите версию платформы внизу окна, либо откройте свойства ярлыка и посмотрите поле «Объект». Типовые пути выглядят так:
C:\Program Files\1cv8\8.3.xx.xxxx\bin\1cv8.exe— 64-разрядная платформа;C:\Program Files (x86)\1cv8\8.3.xx.xxxx\bin\1cv8.exe— 32-разрядная платформа.
Этот способ удобен, когда нужно проверить разрядность установленной платформы до её запуска — например, при подготовке нового рабочего места. Обратите внимание: внутри каталога bin может лежать подкаталог conf и служебные утилиты, но сам факт расположения в Program Files или Program Files (x86) уже даёт ответ.
Как проверить разрядность через командную строку и свойства файла
Если графический интерфейс недоступен или нужно проверить платформу на удалённой машине, поможет командная строка. Можно вывести список процессов с путями к исполняемым файлам и по пути определить разрядность.
wmic process where "name like '1cv8%'" get name,executablepathВ выводе ищите путь к 1cv8.exe: наличие «Program Files (x86)» указывает на 32-разрядную версию. Альтернатива — открыть свойства файла 1cv8.exe в проводнике, но вкладка «Совместимость» не показывает разрядность напрямую, поэтому надёжнее ориентироваться именно на путь установки.
Ещё один вариант — посмотреть список установленных программ: «Панель управления → Программы и компоненты». Там платформа отображается с указанием версии, а у 64-разрядной сборки в названии обычно присутствует пометка «64-разрядная версия» или «(x86-64)».
Как узнать разрядность сервера 1С и клиента в клиент-серверном режиме
В клиент-серверной архитектуре разрядность клиента и сервера — независимые вещи. Клиентское приложение может быть 32-разрядным, а сервер 1С — 64-разрядным, и наоборот. Проверять их нужно отдельно.
Разрядность сервера определяется по процессу rphost.exe (рабочий процесс кластера) и ragent.exe (агент сервера) на серверной машине — тем же способом через диспетчер задач. Также можно открыть консоль администрирования серверов 1С и посмотреть, какая версия платформы зарегистрирована в списке кластеров: 64-разрядный сервер при установке размещается в C:\Program Files\1cv8.
Практическое правило: внешние компоненты и COM-объекты, вызываемые на стороне сервера (например, в фоновых заданиях), должны соответствовать разрядности сервера, а компоненты, работающие на клиенте (сканеры, ККТ), — разрядности клиентского приложения. Отсюда большинство ошибок «несоответствие разрядности».
Сравнение вариантов
Подходит для старых драйверов оборудования и 32-битных COM-компонент. Ограничение — малый объём памяти на процесс, тяжёлые отчёты могут завершаться ошибкой нехватки памяти.
Рекомендуется для серверов и мощных клиентов: снимает лимит памяти, быстрее обрабатывает большие выборки. Ограничение — требует 64-битных версий всех внешних компонент и драйверов.
Как определить разрядность программно — из кода 1С
Когда нужно проверить разрядность автоматически — например, в обработке диагностики или при загрузке внешней компоненты, — используется встроенный язык. Объект ИнформацияОС или системная информация позволяют получить архитектуру процесса.
Самый простой приём — через объект «СистемнаяИнформация»:
Инфо = Новый СистемнаяИнформация;
Если Инфо.ТипПлатформы = ТипПлатформы.Windows_x86 Тогда
Сообщить("Платформа 32-разрядная");
ИначеЕсли Инфо.ТипПлатформы = ТипПлатформы.Windows_x86_64 Тогда
Сообщить("Платформа 64-разрядная");
КонецЕсли;
Важный нюанс: этот код показывает разрядность того процесса, в котором выполняется. Если код работает в серверном контексте, вы получите разрядность сервера, если на клиенте — разрядность клиентского приложения. В управляемых формах с директивой &НаСервере и &НаКлиенте результаты могут отличаться, и это нормально.
Частые ошибки и ограничения при работе с разрядностью
Самая распространённая ошибка — предположение, что разрядность Windows и разрядность 1С совпадают. На 64-разрядной Windows спокойно работает 32-разрядная платформа, и многие конфигурации поставляются именно с ней по умолчанию. Проверять нужно факт, а не догадываться.
Вторая типичная ситуация — после обновления платформы база начинает запускаться под другой разрядностью, потому что новая версия установилась в другой каталог и стартер выбрал её. Симптомы: перестали работать сканер штрихкодов, фискальный регистратор или обмен через COM. Решение — в настройках базы в окне запуска явно указать нужную версию платформы и разрядность (параметр «Разрядность» доступен в настройках базы в свежих версиях стартера).
Как проверить результат
«(32 бита)» есть для 32-битной платформы, отсутствует для 64-битной
Процесс не найден или запущено несколько копий с разной разрядностью
Program Files — 64 бита, Program Files (x86) — 32 бита
Платформа установлена в нестандартный каталог — проверяйте через диспетчер задач
Драйверы и внешние компоненты загружаются без ошибок
Ошибка «несоответствие разрядности» — компонент собран под другую архитектуру
Часто задаваемые вопросы
Можно ли одновременно держать 32- и 64-разрядную платформу на одном компьютере?
Да, они устанавливаются в разные каталоги и не мешают друг другу. В настройках информационной базы в окне запуска можно выбрать, какую разрядность использовать для конкретной базы. Это удобно, когда часть баз требует старых 32-битных компонент, а часть работает на 64-битной платформе.
Почему после обновления платформы перестал работать сканер или ККТ?
Скорее всего, новая версия установилась с другой разрядностью, и база стала запускаться под ней. Драйверы оборудования часто собраны только под 32 бита. Проверьте разрядность процесса в диспетчере задач и в настройках базы укажите 32-разрядную версию платформы либо установите 64-битный драйвер, если он существует.
Влияет ли разрядность клиента на скорость работы файловой базы?
Для небольших баз разница практически незаметна. 64-разрядный клиент даёт преимущество при работе с большими отчётами и объёмными выборками, где 32-битный процесс может упереться в лимит памяти и завершиться с ошибкой. Для типовых операций документооборота обе разрядности работают сопоставимо.
Как узнать разрядность платформы на Linux-сервере?
Выполните в терминале команду file /opt/1cv8/*/ragent (путь может отличаться) — в выводе будет указано «32-bit» или «64-bit». Кроме того, дистрибутивы платформы для Linux явно подписаны: пакеты с суффиксом x86_64 являются 64-разрядными.
Что делать при ошибке «несоответствие разрядности компоненты»?
Ошибка означает, что внешняя компонента или DLL собрана под другую архитектуру, чем процесс, который её загружает. Определите, где выполняется код (клиент или сервер), узнайте его разрядность и установите версию компоненты под эту архитектуру. Если 64-битной версии компоненты не существует, придётся использовать 32-разрядный клиент.
Какую разрядность выбрать при новой установке сервера 1С?
Для сервера практически всегда выбирают 64-разрядную версию — она снимает ограничение на память рабочих процессов и является стандартом для современных серверных ОС. 32-разрядный сервер оправдан только в исключительных случаях, когда критичная серверная компонента существует лишь в 32-битной сборке.
Что важно запомнить
Разрядность платформы 1С быстрее всего проверяется в диспетчере задач по пометке «(32 бита)» у процесса 1cv8.exe, а по пути установки — Program Files означает 64 бита, Program Files (x86) — 32 бита. Клиент и сервер проверяются отдельно, а перед сменой разрядности нужно убедиться в совместимости всех драйверов и внешних компонент.