Использование C# COM-сервера
От: dmitry_npi Россия  
Дата: 12.10.06 17:49
Оценка:
Здравствуйте!
Ситуация такая: я создаю сервер на С# с простым классом и интерфейсом к нему (как описано в MSDN — Interop tutorial). Затем я регистрирую его при помощи

regasm somepath\....\CSharpServer.dll /tlb: somepath\.....\CSharpServer.tlb

Все регистрируется успешно.

Затем в С++ я импортирую библиотеку типов при помощи #import из того места, где она образовалась, т.е. из \CSharpServer\bin\debug. Она импортируется (проект компилируется), но во время выполнения при вызове CoCreateInstance происходит ошибка: не найден файл. После "побайтного" сравнения с примером из MSDN нашел фишку — они копируют dll в директорию клиента. Может, я чего-то не понимаю, тогда объясните — какой же это COM? Разве COM не должен сам уметь определить, где лежит зарегистрированная dll??
Атмосферная музыка — www.aventuel.net
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.