Windows 7 Net.FrameWork
От: Аноним  
Дата: 30.06.10 16:06
Оценка:
С чем может быть связано,
что при попытке создания
COM-объекта в С#
возникает ошибка 0x80040105 — "Класс не зарегистрирован".
Класс на самом деле зарегистрирван, и клиент на с++(неуправляемом)
с ним нормально работает.
Re: Windows 7 Net.FrameWork
От: anton_t Россия  
Дата: 30.06.10 19:14
Оценка:
Здравствуйте, Аноним, Вы писали:

А>С чем может быть связано,

А>что при попытке создания
А>COM-объекта в С#
А>возникает ошибка 0x80040105 — "Класс не зарегистрирован".
А>Класс на самом деле зарегистрирван, и клиент на с++(неуправляемом)
А>с ним нормально работает.

[режим телепатии]
Если система 64-х битная, клиент на с++ — 32-х битный, а .net-приложение собрано в конфигурации AnyCPU, то решение простое — собрать .net-приложение в конфигурации x86.
[/режим телепатии]
Re[2]: Windows 7 Net.FrameWork
От: Аноним  
Дата: 01.07.10 13:06
Оценка:
anton_t,
Спасибо за ответ.

Вот вся информация:
Система Windows 7 32-бит.


Dll собирается из исходных текстов
на машине с возникшей проблемой
в Visual Studio 2008 и регистрируется
там же (в Visual Studio 2008) — registering output.
При этом RegSvr32 выдает: точка входа не найдена.
(DllRegisterServer)

Клиентская Win32 exe-программа работает с dll
начиная с CreateInstance нормально.

Клиентский WindowForms-проект
собирается на машине с возникшей проблемой.

Вот что я нашел:
http://social.msdn.microsoft.com/Forums/en-US/vbinterop/thread/d5c5ff4a-63d3-49ea-a20d-50ef45924b2e
Но похоже там нет ответа, как решить проблему.
Там предлагается выполнить RegAsm для dll.
Я так понял, что RegAsm предназначен для net-dll.
К сожалению у меня пока нет доступа к компьютеру, где возникла проблема.
Может быть надо регистрироватьь
InterOp...dll ?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.