Доброго времени суток, прошу помощи у знатоков 1С. У меня есть некая dll(которая проверена и работает корректно) и есть код внешней обработки, который эту dll использует. Проект должен быть рабочий, мне нужно лишь настроить соединение, но в этом я не преуспел, поскольку это мое первое мини-знакомство с 1с. Проблема заключается в том, что при попытке создания COM-объекта возникает ошибка:

```1c
    Ошибка при вызове конструктора (COMОбъект)
    gth = Новый COMОбъект("Library.ComSdk.Service");
    по причине:
    -2147221164(0x80040154): Class not registered
```

При повторном нажатии на кнопку и повторном выполнении кода появляется другая ошибка:

```1c
    Ошибка при вызове конструктора (COMОбъект)
    gth = Новый COMОбъект("Library.ComSdk.Service");
    по причине:
    -2147024894(0x80070002): The system cannot find the file specified.
```

dll зарегистрирована через regasm. Перепробовал много всего, и comcntr заново регистрировал через regsvr, и пытался компоненту новую создать, ничего не помогает. В интернете много способов решения проблемы, но почему-то ничего не помогло, может кто-то поможет сузить параметры поиска решения. База находится на локальном компьютере, версия 1с 8.3.9.2033. Выполняю я все это так: создал базу, поставил в настройках галочку для запуска приложения с обычными формами, поскольку с управляемыми формами оно не работает, затем жму отладку и открываю обработку. Может где-то в этих действиях я что-то делаю не так.
---
У Вас 32-битный клиент, а COM-объекты зарегистрированы как x64.
Вам необходимо:
1. Удалить регистрацию СОМ: ПутьКx64\regasm regasm /u "ПолныйПуть\ИмяВашейDLL.dll"
2. Зарегистрировать COM объект как x32: ПутьКx32\regasm /codebase "ПолныйПутьКДЛЛ\ИмяВашейДЛЛ.dll"
3. Создать COM+ приложение для работы x32 COM объектов в x64 ОС:
Примерно как здесь https://infostart.ru/public/839172/
---
битность системы, на которой выполняется код?
Com объект зарегистрирован как x32 или x64?
При регистрации использовали ключ /codebase?
---
64, обычная win 10
x64, поскольку компонент написан на C#, то регистрировал я его через:
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\RegAsm.exe
/codebase не использовал
---
Клиент 1с x32?
---
По-моему 64, но я не уверен из-за отсутствия опыта с 1С, я просто установил 1с:Предприятие, создал демо-базу локально, затем я захожу в конфигуратор и запускаю дебаг "Толстый клиент"(видимо 64, раз клиента запускаю здесь же), где уже и открываю внешнюю обработку.
Вообще задача стоит как - запустить внешнюю обработку клиенту, но хоть как-то открыть форму я смог только через запуск "Толстого клиента без управляемых форм", но функционал не работает из-за форм.
---
Что возвращает КаталогПрограммы()?
---
C:\Program Files (x86)\1cv8\8.3.9.2033\bin\
---
У Вас 32-битный клиент, а COM-объекты зарегистрированы как x64.
Вам необходимо:
1. Удалить регистрацию СОМ: ПутьКx64\regasm regasm /u "ПолныйПуть\ИмяВашейDLL.dll"
2. Зарегистрировать COM объект как x32: ПутьКx32\regasm /codebase "ПолныйПутьКДЛЛ\ИмяВашейДЛЛ.dll"
3. Создать COM+ приложение для работы x32 COM объектов в x64 ОС:
Примерно как здесь https://infostart.ru/public/839172/
---
А если regasm 32 битный взять не взлетит? Или WOW64 так далеко не расстилается?
---
А если regasm 32 битный взять не взлетит?
Я собственно и написал о regasm x32 п. 2.
---
Торможу.
---
Человеку по-моему легче клиент переустановить на 64 битный.
---
Спасибо, ошибка исчезла, теперь нормально подключается, правда появилась "ошибка при вызове метода контекста", но это совсем другая история, хотя бы подключилось, буду дальше ковыряться)
---
Извините за назойливость, но можно у вас еще совета спросить, может быть вы сможете подсказать.
У меня есть один и тот же код, который работает в OneScript, но вылетает в самой 1С при первом же вызове функции СОМ-Объекта. Я сначала предполагал, что проблемы с dll, но проверил в OneScript, и все работает.
Я создал СОМ-объект и при вызове GetSettingService() вылетает: "Ошибка при вызове метода контекста" по причине "Неизвестная ошибка"

```1c
    pvService = Новый COMОбъект("Library.ComSdk.Service");
    pvService.Initialize();
    settingService = pvService.GetSettingService();
    /* */
```
---
А вывод команды regasm?
regasm ВашБиблиотек.dll /tlb /codebase

Что пишет?
---
Пишет, что типы зарегистрированы успешно и экспортировано в tlb.