2009-08-05 3 views
1

Я разработал компонент C# com, который я использую из управляемого C++. На моей машине dev, когда все работает нормально. Однако, когда я распространяю файлы, я получил сообщение об ошибке, что компонент не был зарегистрирован. Когда я пытаюсь regsvr32 в dll, он дает мне ошибку (C# DLL не может быть зарегистрирован). Как правильно зарегистрировать эту COM-библиотеку?Зарегистрировать компонент C# COM?

ответ

2

используется regasm с /codebase (и это должно быть ComVisible [а как Patrick McDonald правильно poinhts, вы уже получили в прошлом, что, как это работает локально])

+1

Он уже должен быть ComVisible, если он работает на Dev машины, +1 для regasm –

1

Я считаю, что обычно нужно сделать:

regasm /codebase 

Поскольку COM должен знать точное местоположение вашей сборки, чтобы иметь возможность загрузить его.

Как было предложено другими, вам необходимо установить проект C# как COM видимый (кнопка проекта, приложение, информация о сборке).

управления Finer которых классы видны или не могут быть получены с использованием [ComVisible (истинный)]/[ComVisible (ложь)] атрибут перед каждым классом

Смежные вопросы