В чем разница между RegAsm.exe и regsvr32? Как сгенерировать файл tlb, используя regsvr32? - PullRequest
37 голосов
/ 22 июля 2009

Может ли кто-нибудь сказать мне, в чем разница между regsvr32 и RegAsm? Мой Dll находится в C #, так как я могу импортировать классы в C ++?

Ответы [ 2 ]

38 голосов
/ 22 июля 2009

regsvr32 загрузит библиотеку и попытается вызвать DllRegisterServer() из этой библиотеки. Ему все равно, что на самом деле делает DllRegisterServer() - он просто вызывает эту функцию и проверяет возвращаемое значение. Вы используете его для регистрации COM-серверов в неуправляемых библиотеках DLL. Он не может сгенерировать файл .tlb.

regasm зарегистрирует COM-сборку .NET как COM-сервер. Вы используете его для сборок .NET. Он может сгенерировать файл .tlb только для данной сборки - он проверяет информацию о типах, хранящуюся в сборке, и включает в себя объекты, предоставляемые COM, в библиотеку типов.

2 голосов
/ 22 июля 2009
...