Windows error: ошибка исполнения функции, решаем за минуту
Windows error: ошибка исполнения функции, решаем за минуту
Добрый день! Уважаемые любители компьютерных технологий, я очень рад, что вы вновь заглянули на лучший IT блог pyatilistnik.org. В прошлый раз мы с вами разобрали, как решается «Ошибка применения преобразований. Проверьте правильность путей указанных преобразований», сегодня я расскажу, о еще одном последствии из-за нее. Темой публикации будет ситуация, когда вы не сможете установить платформу 1С и будите получать сообщение: Windows error: ошибка исполнения функции, решаем за минуту, уверен тема будет для многих полезной.
Как выглядит ошибка исполнения функции
Как я и писал выше, она у меня возникает на терминальном сервере Windows Server 2012 R2, при попытке установить платформу 1С 8.2. Запустив файл setup.exe, появляется окно мастера установки, и сразу же дополнительное окно с сообщением:
Далее появляется окно с завершением установки и можно только нажать кнопку «Готово»
За которой вы получите вот такое уведомление:
Как и в большинстве случаев с платформой 1С, все решается небольшим исправлением в конфигурационных файлах. Во первых включите отображение скрытых папок, так как нужный нам файл по умолчанию не виден. Далее на диске C:\ найдите папку ProgramData.
Далее в папке ProgramData перейдите в папку 1C\1CEStat. В итоге полный путь:
Файл 1CEStat.cfg можно открыть с помощью любого текстового редактора, щелкните по нему правым кликом и выберите «Открыть с помощью», а далее удобный для себя редактор.
В файле 1CEStat.cfg найдите параметр ADMINISTRATIONFUNC=0, его нужно удалить и сохранить файл.
Далее открываете ваш дистрибутив платформы 1С и пробуете запустить файл setup.exe, как видите все отлично отработало и сообщение: В процессе установки произошла неисправимая ошибка, не появилось.
Если посмотреть логи в просмотре событий, то вы увидите вот такие события.
После того, как мы удалили параметр ADMINISTRATIONFUNC=0, мы получили уже:
Надеюсь вам оказалась полезной данная заметка, если поддержите проект лайком и репостом, то будет очень здорово.
Ошибка применения преобразований. Проверьте правильность путей указанных преобразований
Ошибка применения преобразований. Проверьте правильность путей указанных преобразований
Добрый день! Уважаемые читатели и гости крупного IT блога pyatilistnik.org. В прошлый раз я вам рассказывал, о установке Denwer, на котором мы тестировали приложение. Сегодня я бы хотел рассмотреть любимую нашу платформу 1С. Понадобилось мне тут установить для старых баз, клиента 8.2. Вроде бы дело плевое, но у меня появилась ошибка при установке 1с 8.2: «Ошибка применения преобразований. Проверьте правильность путей указанных преобразований«. Такую я еще не встречал, спросил у коллег из 1С, то же не видели. Изучив вопрос в интернете и проверив некоторые решения на практике, я нашел, то что мне подошло и я бы хотел этим поделиться, в данной заметке.
Причины ошибки применения преобразований
Давайте рассмотрим для начала основные причины, которые могут вызывать данную проблему:
- Во первых это конфликт версий, например, у вас уже установлена платформа с таким же билдом, но с другой разрядностью.
- Мусор в реестре Windows
- Повреждение веток реестра Windows
1 способ. Удаление не нужных версий
У меня была задача установить 32-х битную версию платформы 8.2.19.130, когда я увидел ошибку применения преобразований, я первым делом полез в оснастку «Программы и компоненты». Там я обнаружил, что уже установлена 64-х битная версия данной платформы и плюс старые, которые я не использую.
Выбираем нужные для удаления и сносим их.
Обязательно производим перезагрузку вашей операционной системы и проверяем установку клиента 1С. У меня опять появилась знакомая мне ошибка, где требовалось проверить правильность путей указанных преобразований. Значит все же повреждены ветки реестра или остались хвосты с предыдущих установок.
2 способ. Удаление старых веток реестра
Ошибку при установке 1С 8.2 можно попробовать решить вот таким путем. Откройте папку с дистрибутивом 1С. Найдите там файл setup.ini. Щелкните по нему правым кликом мыши и выберите пункт изменить.
Найдите там строку, которая начинается с ProductCode=
Теперь открываем реестр Windows, напоминаю для этого нажмите клавиши Win и R одновременно и введите regedit.
Далее открываем вкладку «Правка — Найти» или же можно было нажать горячие клавиши CTRL+F. Клавиша F3 продолжить поиск после найденного значения.
В форме поиска вводим скопированный GUID и начинаем искать.
В итоге у меня нашелся куст в ветке HKEY_CALSSES_ROOT. Как видите в описании фигурирует мой GUID. Теперь вам необходимо удалить данный раздел.
Не забываем нажать F3 и провести поиск дальше, у меня например, нашлось упоминание GUID в ветке HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\Folders
После того, как вы создали резервную копию, щелкаем по разделу и удаляем его. ОБЯЗАТЕЛЬНО ПЕРЕЗАГРУЖАЕМСЯ, чтобы изменения вступили в силу.
После перезагрузки, вы уже спокойно сможете установить платформу 1С и не увидите ошибку применения преобразований. Проверьте правильность путей указанных преобразований.
В некоторых случаях инсталлятор может выдать вот такую ошибку: «Windows Error: Ошибка исполнения функции», как она решается смотрите по ссылке.
3 метод. Чистка реестра от всех разделов с 1С
Если вам не помог первый и второй метод и у вас по прежнему ошибка при установке 1с 8.2, то вот метод, который так же помог многим, но он более радикальный. Смысл данного метода заключается в том, что вы должны в ветке реестра HKEY_CALSSES_ROOT\Installer\Products удалить все упоминания, о 1С. Для этого придется пробежаться по всем кустам и проверить описание в поле ProductName. Их может быть несколько, если у вас установлено несколько платформ с разными билдами.
Надеюсь, что данные методы окажутся вам полезными и вы сможете легко установить нужного клиента 1С. Вот так вот я просто решил проблему с применением преобразований.
Как убрать ошибку 1С «-2147221005(0x800401F3): Недопустимая строка с указанием класса»
❓ Причина
Как правило, сообщение возникает при фоновом обмене данными между системами или запуске синхронизации вручную. Что делать при появлении этой ошибки и куда смотреть.
Причина связана с незарегистрированными в системе компонентами — comcntr.dll, ошибками доступа (недостаточно прав).
1. Проверьте, что обмен запускается в сеансе учетной записи, имеющей достаточные права на уровне 1С и ОС Windows.
В частном случае, если служба Агента сервера 1С работает под технологической записью, а для обмена требуется доступ к файловой ИБ — добавьте NTFS-разрешения на каталог для этого пользователя (права «Изменение»).
2. Зарегистрируйте в системе компоненту comcntr.dll, выполнив операцию в командной строке от имени администратора:
Для x64-систем может потребоваться запуск с расположения %SystemRoot%\SysWOW64\, по умолчанию — %SystemRoot%\system32\
- %ProgramFiles% — путь к папке программных файлов (отличается в зависимости от разрядности ОС/1С и вашего системного диска, например — «C:\Program Files» или «C:\Program Files (x86)»);
- 8.3.xx.xxxx — релиз вашей платформы.
Примеры
Указанная ошибка « Модуль comcntr.dll загружен, но не удалось выполнить DllRegisterServer, код ошибки: 0x80070005 » при выполнении команды означает, что недостаточно прав — запустите командную строку от имени администратора и повторите операцию.
📌 ВАЖНО : в редких случаях требуется сначала выполнить удаление регистрации comcntr.dll с помощью ключа «/u» (DllUnregisterServer), а только потом — повторную регистрацию.
Например, если ранее у вас была установлена другая платформа или некорректно прошла регистрация компоненты из нового релиза.
Последовательно выполняем две команды:
regsvr32 /u “%Program Files%\1cv8\8.3.xx.xxxx\bin\comcntr.dll”
regsvr32 “%Program Files%\1cv8\8.3.xx.xxxx\bin\comcntr.dll”
Как создать коннектор с помощью оснастки «Службы компонентов»
1. Открываем «Панель управления — Администрирование — Службы компонентов»
2. В окне консоли переходим к разделу « Службы компонентов — Компьютеры — Приложения COM+ », далее через правую кнопку мыши « Создать — Приложение ».
3. Следуем указаниям Мастера и выбираем «Создать новое приложение».
4. Указываем имя приложения ( V83COMConnector ) и способ активации ( Серверное приложение ).
5. Выбираем учетную запись, от имени которой будет запускаться приложение.
По умолчанию — « Текущий (вошедший в систему) пользователь », но для фоновой работы обмена рекомендуется указать отдельную учетную запись («Указанный пользователь») — здесь выбираете сами.
6. На этапах «Добавление ролей приложения» и «Добавление пользователей для ролей» особой настройки не требуется — нажимаем «Далее — Далее — Готово».
7. В созданном приложении открываем «Компоненты» и выбираем команду «Создать — Компонент»
8. Следуем Мастеру установки и выбираем пункт « Установка новых компонентов ».
9. В открывшемся диалоге указываем расположение файла comcntr.dll, нажав на кнопку «Открыть». Потом «Далее» и «Готово».
10. Финальные действия после установки — открываем свойства компонента V83COMConnector через правый клик и во вкладе «Безопасность» убираем признак «Принудительная проверка доступа для приложения» и применяем политику «Уровень ограничений = Неограниченный» .
✅ Класс V83COMConnector успешно зарегистрирован и может использоваться для подключения к информационным базам.
Прочие возможные причины (опционально, требуют дополнительной проверки)
Если ошибка появляется снова:
- Перезапуск сервера 1С (из-за зависшего процесса с использованием компоненты) или вручную закрыть зависший com-процесс.
- В системе не установлена программа Excel, необходимая для работы 1С.
- Наличие некорректного кода (например, обращение к устаревшему компоненту V82COMConnector вместо V83COMConnector).
- Переключить тип приложения с «Серверное» на «Библиотечное».
- В «Приложения COM+ — V83COMConnector — Роли — CreatorOwner — Пользователи» добавить USR1CV8 и учетные записи пользователей ОС сервера, кто имеет право запускать задания.
- Через «Программы и компоненты» вызвать установку необходимой платформы в режиме «Исправить» и отметить COM-соединение.
🎯 Надеемся, что эти рекомендации помогут вам исправить ошибку «-2147221005(0x800401F3): Недопустимая строка с указанием класса».
⚡ Подписывайтесь на канал или задавайте вопрос на сайте — постараемся помочь всеми техническими силами. Безопасной и производительной работы в 1С.