Автоматическая регистрация компоненты comcntr.dll

Содержание

Автокликер для 1С Промо

Внешняя обработка, запускаемая в обычном (неуправляемом) режиме для автоматизации действий пользователя (кликер). ActiveX компонента, используемая в обработке, получает события от клавиатуры и мыши по всей области экрана в любом приложении и транслирует их в 1С, получает информацию о процессах, текущем активном приложении, выбранном языке в текущем приложении, умеет сохранять снимки произвольной области экрана, активных окон, буфера обмена, а также, в режиме воспроизведения умеет активировать описанные выше события. Все методы и свойства компоненты доступны при непосредственной интеграции в 1С. Примеры обращения к компоненте представлены в открытом коде обработки.

1 стартмани

03.04.2017   
31471   
75   
slava_1c   

49
   

Универсальный редактор реквизитов объектов. Мультиобработчик Промо

Объекты: Справочник, Документ, ПланОбмена, ПВХ, Бизнес-процесс, Задача, ПланСчетов, ПВР.
Мультиобработчик:
-Проведение, перенумерация, движения, копирование, создание на основании, подчиненность, статистика, удаление документов.
-Регистрация изменений объекта(ов) в планах обмена.
-Установка/Отключение ГлавногоУзла РИБ.
-Поиск и восстановление «Битых» ссылок.
-Недопустимые символы XML/Дерево XML.
-Поиск и замена ссылок.
-Ошибки ИБ, в т.ч XML.
-Множество обработок справочников.
-GUID. Дата и время создания объектов ссылочного типа.
-Аналитика предопределенных, блокируемых реквизитов, ХранилищаЗначений.
-История изменений объекта.
-Активные пользователи.
-Подписки на события, функциональные опции.
-Загрузка пользователей ИБ из Windows, Active Directory.
-Выгрузка/Загрузка пользователей ИБ в/из внешний XML-файл.
-Поддержка различных режимов модальности.
Файловый, Клиент-Серверный варианты.
Обычная и Управляемая формы.

1 стартмани

Запуск Apache 2.4 с модулем 1С внутри Docker контейнера

Про Apache и про Linux слышали, наверное, все. А вот про Docker пока нет, но он сильно набирает популярность последнее время и не зря. Поделюсь своим опытом и дам пошаговую инструкцию настройки веб-сервера Apache с модулем 1С внутри Docker контейнера на Linux хосте. При этом сам сервер 1С может находиться совсем на другой машине и на другой операционной системе

Это не важно, главное чтобы Apache смог достучаться до сервера 1С по TCP. В статье дам подробное пояснение по каждой используемой команде со ссылками на документацию по Docker, чтобы не создавалось ощущение непонятной магии

Также прилагаю git репозиторий с описанием всей конфигурации, можете попробовать развернуть у себя буквально за 10 минут.

ActiveX компонент DynamicWrapperX 2.2 расширенный. Работает в том числе под 64-разрядной Windows 10 +16 –1

DynamicWrapperX — это ActiveX компонент (СОМ-сервер), созданный по мотивам DynamicWrapper, как попытка более полной реализации идеи. Он предоставляет возможность в скриптах на JScript и VBScript регистрировать в качестве методов объекта и затем вызывать функции, экспортируемые dll-библиотеками, в частности функции Windows API. Версия 1 работает под Windows 98. С версии 2 также возможна регистрация функции по её адресу в памяти и регистрация машинного кода функции, представленного в виде хекс-строки. Этот компонент не является модификацией оригинального кода DynamicWrapper, он написан с нуля на языке ассемблера GoAsm. Версия 2.2 тестировалась под Windows XP SP3, Windows 7 SP2, Windows 8.1, Windows 10.

1 стартмани

Куда устанавливать DLL-файлы

Итак, Вы скачали из Интернета нужный модуль, распаковали из архива и теперь возникает совершенно логичный вопрос — а куда кидать DLL в систему?! Во первых, сначала надо определить разрядность системы, так как в 32-битной для этой цели используется одна папка, а в 64-битной — другая. Делается это очень легко. Кликаем правой кнопкой на значке «Этот компьютер» на рабочем столе и в меню выбираем пункт «Свойства». В появившемся окне находим строчку «Тип системы» и смотрим что там написано:

То же самое можно посмотреть и через командную строку, введя команду systeminfo. Она выведет всю информацию о установленной ОС Виндовс, и в строке «Тип системы» будет указана её разрядность.

Ну а дальше всё просто:

Вот именно сюда и надо устанавить ДЛЛ-файл. Здесь %windir% — это переменная окружения, указывающая путь к системной директории, в которой располагаются все важные компоненты Виндовс. Проще говоря, если операционная система установлена на диске С:, то путь к нужным папкам будет C:WindowsSystem32 для 32-разрядной и C:WindowsSysWOW64 для 64-разрядной.

Исправление обновления ноября 2019:

Мы рекомендуем вам попробовать этот новый инструмент. Он исправляет множество компьютерных ошибок, а также защищает от таких вещей, как потеря файлов, вредоносное ПО, сбои оборудования и оптимизирует ваш компьютер для максимальной производительности. Это исправило наш компьютер быстрее, чем делать это вручную:

  • Шаг 1: Скачать PC Repair & Optimizer Tool (Windows 10, 8, 7, XP, Vista – Microsoft Gold Certified).
  • Шаг 2: Нажмите «Начать сканирование”, Чтобы найти проблемы реестра Windows, которые могут вызывать проблемы с ПК.
  • Шаг 3: Нажмите «Починить все», Чтобы исправить все проблемы.

(дополнительное предложение для Advanced System Repair Pro -> Cайт | Лицензионное соглашение | Политика конфиденциальности | Удалить)

Это и есть. Это и есть. Эти четыре шага можно использовать для предоставления соответствующих разрешений любому файлу OCX, вызывающему код ошибки 0x8002801. В большинстве случаев вы можете использовать его для регистрации компонента ActiveX и решения проблемы.

Использовать восстановление системы

Эффективный способ исправить некоторые компьютерные ошибки – это использовать восстановление системы полезность. Это отличная программа, которая создает точки восстановления через определенные промежутки времени. Это означает, что вы можете вернуться к точке, где вы начали получать системную ошибку. Чтобы использовать этот инструмент, нажмите Пуск – Программы – Стандартные – Системные инструменты – Восстановление системы.

Установите разрешения для библиотеки под своим именем пользователя в редакторе реестра.

  1. Нажмите Пуск; введите regedit в поле Начать поиск и нажмите Enter.
  2. Когда будет предложено проверить учетную запись пользователя, нажмите Да.
  3. Перейдите в редактор реестра (regedit) и введите ключ HKEY_CLASSES_ROOT TypeLib
  4. Щелкните правой кнопкой мыши на TypeLib, выберите Permissions, затем перейдите на вкладку Security.
  5. Проверьте, есть ли ваше имя пользователя в списке пользователей, если это так, убедитесь, что у вас есть полный контроль / удаление ограниченных пользователей из списка.
  6. В противном случае нажмите «Добавить» и введите имя пользователя. После добавления убедитесь, что пользователь имеет полный контроль.
  7. Примените изменения и закройте редактор реестра.
  8. Перезагрузите компьютер

Примечание: пожалуйста, сделайте резервную копию журнала перед сменой авторизации.

CCNA, веб-разработчик, ПК для устранения неполадок

Я компьютерный энтузиаст и практикующий ИТ-специалист. У меня за плечами многолетний опыт работы в области компьютерного программирования, устранения неисправностей и ремонта оборудования. Я специализируюсь на веб-разработке и дизайне баз данных. У меня также есть сертификат CCNA для проектирования сетей и устранения неполадок.

При попытке создать запрос и хранимую процедуру в SQL Server 2014 Management Studio выдает, что библиотека не зарегистрирована.

Диаграммы создает и открывает.

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

Пошел искать раздел , его, конечно же, не нет, потому что удалял его.

Дальше предложено зарегестрировать библиотеку, но у меня нет следующего файла (в прошлый раз тоже вроде не было): C:WindowsMicrosoft.NETFrameworkv4.0.30319
egtlibv12.exe

Искал на всем диске через поиск, не нашел.

Так же у меня на компьютере стоит Visual Studio 2019. В прошлый раз вроде помогла ее переустановка (удалил 2017 и поставил 2019).

Сейчас тоже удалил ее и установил заново, переустановил SQL Server 2014. Не помогло.

После ремонта, regtlibv12.exe будет существовать в пути (C:WindowsMicrosoft.NETFrameworkv4.0.30319
egtlibv12.exe).

Запустил инструмент восстановления

У меня есть ПК с MS Office 2010, установленный в то время, как MS Outlook установлен из Office 2007. На этом ПК приведен код ниже:

результаты в следующее исключение:

Я удалил приведенную ниже запись реестра, и приведенный выше код работал нормально. Как только будут выполняться обновления Windows, приведенная ниже запись снова вставлена, и приведенный выше код снова вызывает исключение. HKEY_CLASSES_ROOTTypeLib 9,4

1) Запись реестра не может быть удалена из приложения из-за разрешений

2) Необходимы две служебные версии

3) Строка “string theName = myOutlook.Name;” может быть заменена любой строкой, ссылающейся на переменную myOutlook с точно таким же результатом

4) Тот же код отлично работает на ПК с установленной MS Office 2007, включая MS Outlook.

Часто встречающиеся ошибки 1С и общие способы их решения Промо

Статья рассчитана в первую очередь на тех, кто недостаточно много работал с 1С и не успел набить шишек при встрече с часто встречающимися ошибками. Обычно можно определить для себя несколько действий благодаря которым можно определить решится ли проблема за несколько минут или же потребует дополнительного анализа. В первое время сталкиваясь с простыми ошибками тратил уйму времени на то, чтобы с ними разобраться. Конечно, интернет сильно помогает в таких вопросах, но не всегда есть возможность им воспользоваться. Поэтому надеюсь, что эта статья поможет кому-нибудь сэкономить время.

Копирование числовых ячеек из 1С в Excel Промо

Решение проблемы, когда значения скопированных ячеек из табличных документов 1С в Excel воспринимаются последним как текст, т.е. без дополнительного форматирования значений невозможно применить арифметические операции. Поводом для публикации послужило понимание того, что целое предприятие с более сотней активных пользователей уже на протяжении года мучилось с такой, казалось бы на первый взгляд, тривиальной проблемой. Варианты решения, предложенные специалистами helpdesk, обслуживающими данное предприятие, а так же многочисленные обсуждения на форумах, только подтвердили убеждение в необходимости описания способа, который позволил мне качественно и быстро справиться с ситуацией.

Не удается зарегистрировать модуль comcntr dll

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

Предлагаемая ниже методика позволяет избавиться от описываемой проблемы. К сожалению, после переустановки платформы все возвращается на круги своя и процедуру приходится повторять.

Upd
. Дополнение: если на Windows-сервере 64-бит стоит Сервер 1С Предприятие 64-бит (в дистрибутиве windows64.rar),
то такой проблемы не будет. Уставщик позволяет поставить COM-коннектор без установки самого севера. Это полезно, когда приложение реализовано на платформе 8.3, а COM-соединение нужно к базам на 8.2.

За дополнение спасибо
brix8x
.

Приведен алгоритм настройки системы, со скрином к каждому действию.

2. Регистрация компоненты comcntr.dll

5. Старт сервера 1С. (обязательно:)

Вызываем консоль

Регистрируем компоненту. Компонента отсутствует, если установлен только сервер 1С. Почему-то 1С публикует ее только в составе клиента.

Запускаем службу компонентов. Описывается для Windows Server 2008 R2 Standart.

В ветке Components добавляем новую компоненту comcntr.dll

ВАЖНО!!! После установки нужно немного изменить свойства. Эта тонкость нигде не описана, без нее у меня не работало!

Перезапуск физического сервера

Это выливается в некоторые трудности. Например, при попытке завершения “подвисшего” сеанса из следующей формы:

Сделать это, используя “COM
-соединение с агентом сервера”, не получится, и операция завершится ошибкой.

Для того, чтобы вручную создать COM
-соединение для 32-х битной версии платформы 1С, работающей на 64-х битной версии операционной системы, необходимы выполнить следующие шаги.

1.
Необходимо зарегистрировать в системе 32-х битную библиотеку comcntr.dll
. Для этого, откройте на сервере командную строку cmd.exe от имени администратора и выполните следующие команды:

C:\Users\администратор>cd C:\Program Files (x86)\1cv8\8.3.6.2390\bin
C:\Program Files (x86)\1cv8\8.3.6.2390\bin>regsvr32 comcntr.dll

В появившемся окошке с сообщением об успешной регистрации библиотеки необходимо нажать “ОК”:

Папку bin
надо искать по пути, куда у вас установлена текущая версия платформы 1С. На момент написания статьи – её номер 8.3.6.2390
.

2.
Запускаем консоль “Службы компонентов”: Пуск -> Администрирование -> Службы компонентов. Раскрываем ветку “Службы компонентов”. Вызываем меню, кликнув правой клавишей мыши по ветке “Приложения COM
+” и выбираем Создать -> Приложение:

3.
У вас откроется приветственное окно “Мастера установки приложений COM
+”, в котором необходимо нажать “Далее”:

4.
В следующем окне нажмите на “Создать новое приложение”:

5.
Введите желаемое имя для нового приложения. В примере используется V83_ComConnector
, отметьте способ активации, как “Серверное приложение” и нажмите далее:

6.
В следующем окне выберите учетную запись, которую использует при старте агент сервера 1С. В примере – это учетная запись локального администратора сервера. Введите пару логин/пароль и нажмите “Далее”:

7.

8.
На следующем шаге, вам необходимо добавить (если имеет смысл) пользователя, от имени которого стартует агент сервера 1С и, соответственно, учетная запись которого будет использована для удостоверения работы нашего нового COM
+ приложения. В окне данного примера указан только доменный администратор, от имени которого запущен “Мастер установки приложений COM
+”, нажмите кнопку “Добавить”:

9.
В следующем окне введите имя учетной записи, от имени которой работает агент сервера 1С, и нажмите “ОК”:

10.
Ве

Удаление помеченных объектов, замена ссылок. Обычное и управляемое приложение. Не монопольно, включая рекурсивные ссылки, с отбором по метаданным и произвольным запросом Промо

Обработка удаления помеченных объектов с расширенным функционалом. Работает в обычном и управляемом приложении. Монопольный и разделенный режим работы. Отображение и отбор по структуре метаданных. Отборы данных произвольными запросами. Копирование и сохранение отборов. Удаление циклических ссылок (рекурсия). Представление циклических в виде дерева с отображением ключевых ссылок, не позволяющих удалить текущий объект информационной базы. Удаление записей связанных независимых регистров сведений. Групповая замена ссылок. Индикатор прогресса при поиске и контроле ссылочности.

10 стартмани

31.10.2016   
52823   
630   
m..adm   

217
   

Cause

There are other possible causes for similar errors.

See separate IBM Technote #1962087 for more examples.

This Technote specifically relates to the scenario where the cause is that a version of Skype for Business has been installed which contains MS Office components that are *different* from the version of Microsoft Office (already installed on that device).

This has created a mixture of Microsoft Office ‘types’ of installation on the client device (for example, different types of registry key entries), and this is confusing Controller.

If the customer wishes to install Microsoft Skype, then theymust ensure that the version/type of Skype does not install MS Office components that are different from the currently-installed version of Microsoft Office.More Information
Controller does not support multiple installations of Microsoft Office being installed on the same client device, because this confuses the product.

Traditionally this means that customers only had to avoid having more than one version of Office installed

However, recently Microsoft introduced:

  • new types of Office (for example the ‘traditional’ version of Office 2016 and the ‘Office 365’ version of Office 2016)
  • and new installation methods (‘traditional’, and ‘click to run’).

This has made understanding compatibility much more complex.
Because of these incompatibility problems, Microsoft now produce two different types of the Skype for Business client:

(1) ‘

Standard‘ Skype for Business client
(2) ‘Stand-alone‘ Skype for Business client

  • This is specifically designed to let Microsoft Office 365 users run a current version of Skype for Business alongside different versions of Microsoft Office products.

==================================
In addition, Microsoft recognises that some customers wish to use older versions of MS Office with newer versions of Skype, and therefore have published a workaround where they mention the following registry key: HKEY_CLASSES_ROOT\TypeLib\{2DF8D04C-5BFA-101B-BDE5-00AA0044DE52}\2.8
For more details, see Microsoft support article #3178867.
==================================

Сервер 1С:Предприятие на Ubuntu 16.04 и PostgreSQL 9.6, для тех, кто хочет узнать его вкус. Рецепт от Капитана

Если кратко описать мое отношение к Postgres: Использовал до того, как это стало мейнстримом.
Конкретнее: Собирал на нем сервера для компаний среднего размера (до 50 активных пользователей 1С).
На настоящий момент их набирается уже больше, чем пальцев рук пары человек (нормальных, а не фрезеровщиков).
Следуя этой статье вы сможете себе собрать такой же и начать спокойную легальную жизнь, максимально легко сделать первый шаг в мир Linux и Postgres.
А я побороться за 1. Лучший бизнес-кейс (лучший опыт автоматизации предприятия на базе PostgreSQL).
Если, конечно, статья придется вам по вкусу.

Администрирование конфигураций 1С (недокументированные особенности работы)

Многие мои коллеги по работе и по профессии, уверен, сталкиваются с аналогичными ситуациями, когда программа 1С при работе с конфигурацией, мягко говоря, работает «странно». Как говорит один хороший знакомый (к слову, один из авторов УТ 11):
— «вот, ну согласись, нанять пару серьезных методистов — реальных дядечек с реального производства, до начала разработки — единственная ЭЛЕМЕНТАРНАЯ политика, как можно было этого не сделать???? там их НЕТ. Причем это 0 в плане затрат на разработку, там нет ограничений бюджета, это просто самый тупой прокол.»
В этой статье приведу способы лечения пресловутых проколов (за последний месяц).

Быстрый поиск в справочниках по наименованию, с использованием svcsvc.dll +12 –

По аналогии с http://infostart.ru/public/14286/, недавно узнал что в svcsvc.dll несколько обновился функционал, в частности был добавлен метод AddString().
В прилагаемом коде показан запрос, реализованный методами ВК 1SQlite, т.е. только для DBF.
Это только пример. Т.е. если например у справочника отсутствует поле «Наименование», то скорее всего будет ошибка.
Тем не менее критика приветствуется)))
Необходимые ВК: 1SQlite, FORMEX, svcsvc.dll (отсюда: http://www.1cpp.ru/forum/YaBB.pl?num=1373266553).

p.s.
Спасибо огромное уважаемому ADirks за все эти прекрасные плюшки, и помощь в их освоении)))

1С:Предприятие Бухгалтерия переход с редакции 2.0 на 3.0. Практика перевода информационной базы для работы в управляемом приложении. Промо

Из информационного выпуска 1С № 16872 от 08.07.2013г. стало известно об относительно скором необходимом переходе на редакцию 1С:Бухгалтерия 3.0. В данной публикации будут разобраны некоторые особенности перевода нетиповой конфигурации 1С:Бухгалтерия 2.0 на редакцию 3.0, которая работает в режиме «Управляемое приложение».
Публикация будет дополняться по мере подготовки нового материала. Публикация не является «универсальной инструкцией».

Update 3. Права доступа. 14.08.2013
Update 4. Добавлен раздел 0. Дополнен раздел 4. Добавлен раздел 7. Внесены поправки, актуализирована информация. 23.11.2013.

1 стартмани

How to Carry out Proper Repair of Common PC Problems

PC errors are common in many computers that have stood through a long period of use. The computer will experience several Windows OS errors. A few of these you can leave for a few weeks before repairing, while most of the errors need fixing immediately. Such errors will get worse if they’re left unrepaired for quite some time.

If you have corrupted files in the registry that affected the system, there’s a big chance that the corrupted system file will fail to perform commands to some other links. If you have skills in fixing the problem, search for the best tools to work with in manually extracting unwanted files. Nonetheless, employing experts is a good idea if you can’t fix the Windows system by yourself. The common errors in the Windows OS are the following.

Missing DLLs

When you’re launching a software that has lost files, error will likely take place. Among the reasons why this happens is due to moving necessary DLL files unintentionally from the appвЂs folder. If finding the lost file manually seems impossible, try uninstalling and reinstalling the application.

Unknown Error

There’s a number of unknown errors that occur in the Windows OS. Renaming some files or restarting your PC will do the trick in fixing many of these problems. When a set up of Windows Update is left unfinished, such problems will also arise. Having said that, if you can search for the resolution of the problem from the web, fix it immediately to avoid it from happening again.

Request Timed Out

This is a usual problem when performing a ping command. There are numerous reasons why this error happens. Lost connection, wrong configuration, as well as incorrect IP address are the usual causes. By troubleshooting the errors, you will be able to find the issue and fix it from there.

BSOD

Blue Screen of Death is one of the errors that cannot be fixed with only a few simple clicks. Unless an experienced technician handles the error, the Windows system will remain that way: blue and full of codes.

Варианты решения проблемы

Имеется несколько методов, позволяющих устранить данную проблему. Рассмотрим каждый из них подробнее.

Способ 1: OCX/DLL Manager

OCX/DLL Manager – это маленькая программа которая может помочь зарегистрировать библиотеку или файл OCX.

Для этого вам нужно будет:

  1. Нажать на пункт меню «Register OCX/DLL».
  2. Выбрать тип файла, который будете регистрировать.
  3. При помощи кнопки «Browse» указать местоположение DLL.
  4. Нажать на кнопку «Register» и программа сама зарегистрирует файл.

OCX/DLL Manager также умеет отменять регистрацию библиотеки, для этого понадобится выбрать в меню пункт «Unregister OCX/DLL» и в последствии проделать все те же операции, как и в первом случае. Функция отмены может вам понадобиться для сравнения результатов при активированном файле и при отключенном, а также в процессе удаления некоторых компьютерных вирусов.

В процессе регистрации, система может выдать вам ошибку, говорящую о том, что требуются права администратора. В таком случае, нужно запустить программу нажав на неё правой кнопкой мыши, и выбрать «Запуск от имени администратора».

Способ 2: Меню «Выполнить»

Можно зарегистрировать DLL, используя команду «Выполнить» в стартовом меню операционной системы Windows. Для этого нужно будет произвести следующие действия:

  1. Нажать клавиатурную комбинацию «Windows + R» или выбрать пункт «Выполнить» из меню «Пуск».

Ввести имя программы, которая будет регистрировать библиотеку — regsvr32.exe, и путь, по которому размещен файл. В итоге должно получиться так:

где dllname — это имя вашего файла.

Этот пример подойдёт вам в том случае, если операционная система установлена на диск С. Если она находится в другом месте, то нужно будет поменять букву диска или воспользоваться командой:

В таком варианте программа сама находит папку где у вас установлена ОС и запускает регистрацию указанного DLL файла.

В случае с 64-разрядной системой у вас будет две программы regsvr32 — одна находится в папке:

и вторая по пути:

Это разные файлы, которые используются раздельно для соответствующих ситуаций. Если у вас 64-битная ОС, а файл DLL 32-битный, тогда сам файл библиотеки должен быть помещен в папку:

и команда будет выглядеть уже так:

Нажмите «Enter» или кнопку «OK»; система выдаст вам сообщение о том, успешно или нет была зарегистрирована библиотека.

Способ 3: Командная строка

Регистрация файла через командную строку не сильно отличается от второго варианта:

  1. Выберите команду «Выполнить» в меню «Пуск».
  2. Впишите в открывшемся поле для ввода cmd.
  3. Нажмите «Enter».

Перед вами появится окно, в котором нужно будет вводить те же команды, что и во втором варианте.

Надо отметить, что у окна командной строки имеется функция вставки скопированного текста (для удобства). Найти это меню можно, нажав правой кнопкой на пиктограмме в левом верхнем углу.

Способ 4: Открыть с помощью

  1. Откройте меню файла, который будете регистрировать, нажав по нему правой кнопкой мыши.
  2. Выберите «Открыть с помощью» в появившемся меню.

Нажимаете «Обзор» и выберете программу regsvr32.exe из следующей директории:

или в случае, если вы работаете в 64-битной системе, а файл DLL 32-разрядный:

Откройте DLL с помощью этой программы. Система выдаст сообщение об успешной регистрации.

Возможные ошибки

«Файл не совместим с установленной версией Windows» — это означает, что вы, скорее всего, пытаетесь зарегистрировать 64-разрядную DLL в 32-битной системе или наоборот. Воспользуйтесь соответствующей командой, описанной во втором способе.

«Точка входа не найдена» — не все библиотеки DLL можно зарегистрировать, некоторые из них просто не поддерживают команду DllRegisterServer. Также, возникновение ошибки может быть вызвано тем, что файл уже зарегистрирован системой. Существуют сайты, распространяющие файлы, которые в реальности не являются библиотеками. В таком случае, естественно, зарегистрировать ничего не выйдет.

В заключение нужно сказать, что суть всех предложенных вариантов одна и та же — это просто разные методы запуска команды регистрации — кому как удобнее.

Опишите, что у вас не получилось.
Наши специалисты постараются ответить максимально быстро.

Ручное создание COM+ соединения для 1С

Posted by Makc — 12.11.2015

На сервере под управлением Microsoft Windows Server 2008 R2 ×64 работает 32-х разрядная версия сервера 1С. Не спрашивайте – почему именно так, но на личном опыте убедился, что версия 1С данной разрядности работает стабильнее, чем её 64-х битный собрат. Единственным минусом, который я пока обнаружил, является тот факт, что при установке 32-х битной версии нет возможности активировать компоненту COM+ соединений, т.к. 64-х битные приложения не могут запускать 32-х битные DLL, которые активируются при запуске 32-х битного COM+ объекта 1С.

Это выливается в некоторые трудности. Например, при попытке завершения “подвисшего” сеанса из следующей формы:

Сделать это, используя “COM-соединение с агентом сервера”, не получится, и операция завершится ошибкой.

Для того, чтобы вручную создать COM-соединение для 32-х битной версии платформы 1С, работающей на 64-х битной версии операционной системы, необходимы выполнить следующие шаги.

1. Необходимо зарегистрировать в системе 32-х битную библиотеку comcntr.dll. Для этого, откройте на сервере командную строку cmd.exe от имени администратора и выполните следующие команды:

 C:\Users\администратор>cd C:\Program Files (x86)\1cv8\8.3.6.2390\bin
 C:\Program Files (x86)\1cv8\8.3.6.2390\bin>regsvr32 comcntr.dll

В появившемся окошке с сообщением об успешной регистрации библиотеки необходимо нажать “ОК”:

Папку bin надо искать по пути, куда у вас установлена текущая версия платформы 1С. На момент написания статьи – её номер 8.3.6.2390.

2. Запускаем консоль “Службы компонентов”: . Раскрываем ветку “Службы компонентов”. Вызываем меню, кликнув правой клавишей мыши по ветке “Приложения COM+” и выбираем :

3. У вас откроется приветственное окно “Мастера установки приложений COM+”, в котором необходимо нажать “Далее”:

4. В следующем окне нажмите на “Создать новое приложение”:

5. Введите желаемое имя для нового приложения. В примере используется V83_ComConnector, отметьте способ активации, как “Серверное приложение” и нажмите далее:

6. В следующем окне выберите учетную запись, которую использует при старте агент сервера 1С. В примере – это учетная запись локального администратора сервера. Введите пару логин/пароль и нажмите “Далее”:

7. В следующем окне “Мастера…” нажмите “Далее”:

8. На следующем шаге, вам необходимо добавить (если имеет смысл) пользователя, от имени которого стартует агент сервера 1С и, соответственно, учетная запись которого будет использована для удостоверения работы нашего нового COM+ приложения. В окне данного примера указан только доменный администратор, от имени которого запущен “Мастер установки приложений COM+”, нажмите кнопку “Добавить”:

9. В следующем окне введите имя учетной записи, от имени которой работает агент сервера 1С, и нажмите “ОК”:

10. Вернувшись к “Мастеру…”, убедитесь, что искомая учетная запись добавилась и нажмите “Далее”:

11. Закройте “Мастер установки приложений COM+”, нажав “Готово”:

12. Мы вернулись к окну консоли “Службы компонентов”. Убедитесь, что приложение COM+ с вашим именем (в примере – V83_ComConnector) создан:

13. Раскройте дерево созданного приложения и, вызвав меню правой кнопкой мыши по ветви “Компоненты”, создайте новый компонент :

14. У вас откроется приветственное окно “Мастера установки компонентов COM+”, в котором необходимо нажать “Далее”:

15. В следующем окне нажмите на “Установка новых компонентов”:

16. С помощью окна explorer выберите библиотеку comcntr.dll, находящуюся по пути , которую мы зарегистрировали в системе на первом шаге. Убедитесь, что путь к этой библиотеке совпадает с вашей версией платформы. В примере – это 8.3.6.2390. И нажмите “Открыть”:

17. В следующем окне “Мастера…” нажмите “Далее”:

18. Закройте “Мастера установки компонентов COM+”, нажав “Готово”:

19. Вы вернетесь к окну консоли “Службы компонентов”. Убедитесь, что в нашем приложении COM+ создалась новая компонента:

20. Вызовите её свойства:

21. И на вкладке “Безопасность” в окошке “Явно установленные для выделенных объектов роли:” отметьте мышкой CreatorOwner и нажмите “ОК”:

22. Вернувшись к консоли “Службы компонентов” закройте её и перезагрузите сервер.

После выполнения указанных действий, завершение “подвисших” сеансов в 1С версии 8.3 происходило без проблем. Единственное неудобство – теперь после каждого обновления платформы 1С на новую версию, необходимо проделывать данную операцию.

_______________По мотивам данной статьи.

  • Currently 4.00/5

Rating: 4.0/5(4 votes cast)

Статистика базы данных с отбором по подсистемам (кол-во и открытие списков: документов, справочников, регистров) и анализ наличия основных реквизитов: универсальная обработка (два файла — обычный и управляемый режим)

Универсальная обработка для статистики базы данных (документы, справочники, регистры, отчеты) с отбором по подсистемам и с анализом наличия основных реквизитов (организации, контрагенты, договора, номенклатура, сотрудники, физлица, валюта).
Возможность просмотра списка документов или справочников или регистров при активизации в колонке «Документы, справочники, регистры, отчеты» в текущей строке.
Полезная обработка для консультации пользователей, где искать метаданные в каком интерфейсе, т.к. подсистема указывает в каком интерфейсе находятся метаданные (документы, справочники, регистры, отчеты).

1 стартмани

20.02.2017   
18200   
50   
strelec13   

11
   

Суть ошибки библиотеки

Windows (7/8/10) для образования связей с отдельными от нее программами применяет файлы .dll. Эти библиотеки содержат все необходимые коды. Если эти коды отсутствуют или прописаны неверно, то пользователю выдается сообщение «Точка входа dllregisterserver не найдена».

Рассмотрим некоторые первоисточники проблемы, ведь помимо некорректной установки операционной системы существует еще несколько причин:

  1. Многие программы шпионы провоцируют сбой библиотек. Вирусы иногда целенаправленно удаляют файлы dll. Стоит непременно проверить все основные диски на компьютере.
  2. Если точка входа невозможна лишь на одной программе, тогда вам попался некачественный софт. Библиотека попросту отсутствует. Может это вина разработчиков, хотя все сборки из интернета в основном делаются подпольно. Игра будет устанавливаться нормально, но без dll, пути к ней закрыты.
  • Очевидным остается вариант в виде скачивания программы из другого источника. Пробуйте сначала прочитать комментарии пользователей, их мнения о софте бывают полезными.
  • Как вариант можно попробовать скачать дополнительные установочные файлы. Иногда к утилитам прилаживают дополнения — патчи, моды. Это как с DirectX. Только установив последнюю версию, все заработает как надо. Убедитесь, все ли патчи были скачаны.
  1. Другие причины точно неизвестны, но ОС может и просто перестать находить библиотеки.

Проблемы

  1. Высокие затраты на подключение/инициализацию
  2. Удержание com-серверов — эффективное средство борьбы
  3. Временное хранилище. Производитель не рекомендует, но деваться больше некуда. http://infostart.ru/public/331683/
  4. Повторное использование возвращаемых значений. Очищаются каждые 20 мин
  5. Разные сборки платформы клиента и сервера при одинаковом издании платформы
  6. Для обхода для каждой отличной от COM-клиента сборки платформы назначаем и настраиваем DCOM сервер
  7. Отсутствие информации о типах вложенных в COM-объекты объектов 1С (вместо типа объекта 1С везде получаем тип «COMОбъект») и отсутствие контекстной подсказки по ним
  8. Для обхода применяем принцип «минимум COM-вызовов»
  9. При передаче исключения из COM-сервера оно принимает краткую форму из-за ошибки платформы
  10. Для обхода оборачиваем каждый вызов на стороне COM-сервера в попытку и в исключении перевызываем исключение с полным описанием ошибки
  11. При создании COM-объекта ошибка “Версия компоненты «comcntr» (8.X.XX.XXX) отличается от версии корневого модуля «core82» (8.X.YY.YYY)”
  12. Для обхода создаем COM+ приложение с внепроцессной активацией. Тогда COM-сервер будет создаваться в отдельном процессе и совпадения версий этих модулей не потребуется.
  13. Медленные каналы (большие задержки)
  14. Каждой подсети за отдельным медленным каналом назначаем и настраиваем свой DCOM сервер и при обращении к базам за этим каналом COM-серверы создаем на этом компьютере, минимизируя количество и объемы вызовов Com-клиентCom-сервер
  15. Кешируем (повторно используем) COM-серверы
  16. Невозможно разорвать соединение рабочего процесса, в котором ожидается завершение вызова COM-сервера
  17. Для обхода можно использовать создание COM-объектов в выделенных хост-процессах, настроив соответствующим образом COM+ приложение, и регистрировать идентификаторы этих процессов в привязке к сеансам COM-клиентов. Тогда при необходимости завершить серверное соединение такого сеанса можно сначала убить процесс COM-сервера, а потом и сам сеанс.
  18. При обращении к COM-объекту может возникать ошибка «Неизвестная ошибка». Возможные причины:
  19. Com-сервер перестал существовать. Возможные причины:
  20. Переполнение стека
  21. Невосстановимая ошибка
  22. Хост-процесс завершился
  23. Потеря связи с нелокальным COM-сервером
  24. Совпадение имен свойств и методов без параметров объекта создает неоднозначность обращения к ним через COM
  25. Например, если у справочника есть реквизит ПолноеНаименование, то из-за наличия метода ПолноеНаименование() обращение к реквизиту ПолноеНаименование через COM может привести к вызову метода ПолноеНаименование()
  26. Для обхода используем принцип “минимум COM-вызовов”
Оцените статью
Рейтинг автора
5
Материал подготовил
Андрей Измаилов
Наш эксперт
Написано статей
116
Добавить комментарий