1с при обращении к com объекту вылетает
Случай из практики. 1С Розница «вылетает» при открытии некоторых чеков. Из раздела «Продажи — Чеки». Несколько позиций за прошлые даты. Их открытие приводит к падению тонкого клиента 1С в дамп.
Состав ПО: ОС WIndows 7 Prof x64 Service Pack 1, платформа 8.3.16.1063, локальная ИБ в файловом режиме.
Программа автоматически закрывается, а на экране на пару секунд появляется окно: « Подождите, пожалуйста! Выполняется сохранение информации об ошибке для возможности последующего анализа! ».
Первым делом — правильные вопросы
- Когда это началось?
Вспомните, какие были последние изменения в программном и аппаратном обеспечении. Возможно, что они повлияли на стабильность работы 1С, и возврат к прежнему состоянию ПК — как один из выходов. - Где и при каких событиях появляется?
Вылет программы появляется у всех или же на одном рабочем месте. Проблема может идти от самой ИБ (сервера) или же связана с локальным окружением. - Повторяется ли ошибка для другой учетной записи?
Как на уровне ОС, так и в правах самой 1С. Проверьте, как ведет себя программа, открытая с полными правами (от имени администратора). Возникает ли ошибка, если повторить операции пользователя.
Дальнейшие действия направлены на поиск причины. Чтобы отсечь прочие факторы и сузить проблему до конкретных условий, при которых фиксируется сбой.
Как действовать в общем случае
Делаем бэкап базы. Обязательно. Перед любыми действиями с базой — сделайте архивную копию. С помощью копирования файла 1Cv8.1CD или выгрузки dt-файла через Конфигуратор.
Этот этап можно пропустить, если проверяете на копии. Например, когда вы разворачиваете базу рядом с основной, по другому пути (адресу).
3. Очистка настроек пользователя
Не все, оставьте необходимые настройки. Либо проверьте работу под новым пользователем (тестовой учетной записью).
Чтобы исключить влияние модулей антивирусной защиты.
С помощью chdbfl, а также через проверки целостности в инструменте «Тестирование и исправление».
6. Другие разрядность и режим
Простая проверка в разных вариантах запуска — x86/x64, толстый/тонкий клиент.
Есть возможность опробовать работу на более новой платформе? Проверьте. А в некоторых случаях — даже откат на прежний релиз.
Где взять дополнительную информацию
Для технически подкованных пользователей и администраторов. Кто желает идти вглубь и понять, в чем же все-таки проблема.
- Журнал ОС (через оснастку « Просмотр событий \ Журналы Windows \ Приложение ») — можно увидеть путь сбойного модуля и его расположение.
- Анализ файла дампа — например, с помощью Debugging Tools for Windows.
- Включение технологического журнала 1С и его разбор.
- Официальный сервис публикации ошибок (bugboard).
- Запрос в службу технической поддержки 1С.
✅ Для этого частного случая помогло обновление платформы до версии 8.3.18.1208.
⚡ Подписывайтесь на канал или задавайте вопрос на сайте — постараемся помочь всеми техническими силами. Безопасной и производительной работы в Windows и 1С.
(6) Проблема у вас только одна - попытка использования устаревших и уже нихрена реально не поддерживаемых технологий.
Представь что у тебя Linux (или Mac) и действуй исходя из этого.
(9) Там проблемы когда несколько разных версий платформы 1С стоят или ставили криво.
Можно совместить 8.1. 8.2 и 8.3 а вот разные 8.3 глючит.
Например если 8.3.16 и 8.3.15 ну или разрядность того.
(10) неа. Я подозреваю что надо ставить на сервере, а он пытается на клиенте. Ну и х86-64 и SysWOW64 - как бы противоречие, хотя там надо просто зарегать COM+-приложение
С учетом того,что стандартный обмен все равно передает xml-файл,то можно перейти на web-сервисы без проблем.
(12) это надо публиковать базу, а мало кто это хочет делать
(13) так надо опубликовать внутри локальной сети, не надо в глобальном интернете публиковать.
мне регистрация в службах компонентов всегда помогала
Нет, версия одна и запускаю на сервере. Проблема решилась перезапуском сервера 1С. Всем спасибо за участие.
Вроде COM-соединение возможно с базой на другой версии платформы 8.3 А OLE-соединение возможно?
(кстати на 16-ю версию платформы люди жалуются, нам сейчас пока запретили её ставить)
Панель управления\Все элементы панели управления\Администрирование\Службы компонентов\Компьютеры\Мой компьютер\Приложения COM+\CommCtrl\Роли\CreatorOwner\Пользователи\
Сюда добавить пользователей ОС сервера, под кем приходится запускать регламентные задания, а главное USR1CV8.
И лучше физически перезагрузить сервер сам компьютер.
У меня все базы на 8.3.10.2466 (x86-64), только одна 8.3.14.1779 (x64) на диапазоне портов 16хх. Когда к ней подключаюсь в строке подключения к имени сервера дописываю ":1640". Даже вручную делаю команду C:\Windows\SysWOW64\regsvr32 "c:\Program Files\1cv8\8.3.14.1779\bin\comcntr.dll", пишет: Успешно выполнено DllRtgisterServer в c:\Program Files\1cv8\8.3.14.1779\bin\comcntr.dll. Но при этом все равно ошибка: "Несоответствие версий клиента и сервера 1С:Предприятия" (8.3.10.2466 - 8.3.14.1779).
(21) Я вот думаю сказать или нет что COM как и прочие приложения могут быть как x32 так и x64.
И короче регать думать надо что и откуда. И откуда и куда подключаться.
Ну не выйдет цыветочек и x32 не умеет с x64 через COM или OLE
Добрый день, дорогие друзья, я в своей работе часто сталкивался с рядом ошибок связанных с com объектами. Когда я только начинал работать в сфере ИТ, то подобные ошибки о которых пойдет речь ниже, вызывали у меня недоумение и я отправлял пользователей к программистам, но потом шло время и опыт мой рос, такие проблемы начал решать самостоятельно, теперь хочу поделиться решениями с вами.
Рассмотрим первый пример - ошибка связана с внешней обработкой EDI
Данная ошибка устраняется очень просто, вам нужно зарегистрировать excon.dll. Для этого открываем cmd от имени администратора и прописываем следующие команды
Решается не сложно, но для решения есть несколько методов и в разных ситуациях спасает тот или иной метод решения. Ниже рассмотрим примеры данной ошибки и решения.
Первое что нужно попробовать сделать на машине пользователя - это зарегистрировать comcntr.dll
Для этого открываем cmd от имени администратора и прописываем следующие команды
regsvr32 "C:\Program Files (x86)\1cv8\ 8.3.15.1778 \bin\comcntr.dll" - Все что выделено жирным шрифтом, в вашем случае может отличаться
cd c:\Windows\SysWOW64 regsvr32 "C:\Program Files\1cv8\ 8.3.15.1778 \bin\comcntr.dll" - Все что выделено жирным шрифтом, в вашем случае может отличаться
Если данное решение не помогает, то нужно проверить на сервере 1С возникает такая же ошибка или нет, если возникает при тех же действиях, то сделать следующие действия в cmd от имени администратора
"C:\Program Files (x86)\1cv8\ 8.3.15.1778 \bin\1cv8.exe" /regserver - Все что выделено жирным шрифтом, в вашем случае может отличаться
"C:\Program Files\1cv8\ 8.3.15.1778 \bin\1cv8.exe" /regserver " - Все что выделено жирным шрифтом, в вашем случае может отличаться
Можно создать данное com соединение с помощью "Службы Компонентов Windows" , об этом рассказывать не буду в данной статье, если вам нужна информация, пишите комменты, я свяжусь с вами и все расскажу. Если будет много пожеланий, сделаю отдельную статью на эту тему.
Третья ошибка связана с компонентой MSScript
Данные ошибки возникают обычно при печати из 1С. Две разные базы часто бывают связаны между собой средствами различных компонент. В моем случае это торговля и сертификация. И при печати комплектов документов иногда возникает данная ошибка.
Решение не сложное и данное решение можно автоматизировать если проблема массовая (массовая может быть из-за обновления релиза 1С)
Давайте начнем по порядку и зайдем в "Службы Компонентов Windows" от имени администратора на пользовательской машине где возникает данная ошибка и найдем там " Приложения COM+ "
Теперь нужно нажать правой клавишей мыши по " Приложения COM+ " и выбрать " Создать-->Приложение "
Откроется мастер установки в котором нужно проделать все что показано на скринах ниже
У вас в основном окне появится только что созданное приложение и его нужно настроить, для этого щелкаем по нему правой кнопкой мыши и выбираем " Свойства " и переходим во вкладку " Безопасность " в которой настраиваем все один в один как на скрине ниже
Теперь необходимо для него создать компоненту и запустить ее в работу, снова предлагаю наглядно посмотреть на скрины ниже.
Осталось только запустить компоненту и ошибку в 1С вы устранили. Для запуска вам нужно перейти в " Приложения COM+ ", в центральном окне найти Msscript и нажать правой кнопкой мыши, затем нажать " Пуск " и ваша компонента начнет работать.
Теперь пару слов об автоматизации данного процесса т.к. бывают массовые случаи когда слетает данная компонента. Наша задача сделать msi файл и затем его разлить с помощью групповых политик или с помощью kaspersky security center (если конечно вы им пользуетесь - в моем случае удобнее было воспользоваться именно касперским)
Для создания файла msi необходимо выполнить все рекомендации со скринов ниже
📝 Столкнулись с ситуацией, когда в тихом режиме, сама по себе, закрывается программа 1С. Файловая база, ПК на «боевом» железе с набором обновлений, пусть и на Windows 7. По времени 10-15 минут, а потом самозакрытие. Без ошибок и уведомлений. Раз, и закрылась.
🚩 Приступили к расследованию. Возможно, не с той стороны, но главное — начали.
Первая гипотеза сводилась к сбросу кэша, проверке базы на платформе другой разрядности (x86/x64), а также переустановке версии. Не помогло. Протестировали запуск в тонком и толстом клиентах. Та же ошибка.
🚩 Следующая партия гипотез касалась настроек операционной системы. Проверили следующее: удаление антивируса, отключение Защитника Windows, замена драйверов видеоадаптера, переключение на стандартный драйвер VGA.
А также создание нового профиля пользователя, повышение прав до администратора, отключение брандмауэра и UAC, установка полных прав на каталог 1С, принудительный запуск от имени администратора и т. д.
Без результата. Платформа как падала, так и продолжала.
🚩 Быстро ситуация не разрешалась. Подключили «тяжёлую артиллерию»: разбор дампов программы и включение технологического журнала.
Разбор ошибок показал, что «сыплются» ошибки доступа к файлам базы, кэша и сетевых подключений к портам.
Через поиск в Интернете вышли на проверку имени компьютера.
Изменили наименование по рекомендациям, перезагрузили и, чудо, программа заработала. «Здравствуй, опыт, сын ошибок трудных».
🎯 Если у вас 1С ведет схожим образом и «вылетает» через
10 минут, рекомендуем:
- переименуйте ПК (новое имя на латинице, без спецсимволов, не более 8 букв);
- проверьте путь к информационной базе (короткий, без пробелов, чтобы содержал только латинские символы).
✅ После этих изменений вылеты прекратятся. Как минимум, надеемся, что будет вам счастье. Наш клиент — 100% обрадовался. И кажется, новому имени ПК больше всех. 1С радует по умолчанию, как всегда.
⚡ Подписывайтесь на канал или задавайте вопрос на сайте — постараемся помочь всеми техническими силами. Безопасной и производительной работы в Windows и 1С.
Читайте также: