2009-07-13 5 views
3

Я работаю над панелью инструментов для IE с использованием .NET. В настоящее время я вставляю свои сборки .NET с помощью gacutil и регистрирую свою COM-сборку с regasm.Создание установки (MSI) для регистрации (regasm) сборки

Я хочу создать установку (MSI) для проекта, но я не могу зарегистрировать типы. У меня есть все в папке GAC проекта установки, но я не могу найти способ существенно запустить regasm - и я не хочу включать его в проект. Параметр/regfile не совпадает с регистрацией типов.

Я попытался использовать tlbexp для экспорта .tlb-файла и включить его в папку приложения MSI, но, похоже, проблема не устранена. Если запустить MSI-установщик и вручную запустить regasm на моей сборке, то все работает отлично. Есть идеи?

Спасибо.

ответ

2

В соответствии с этим:

http://www.codeproject.com/KB/cs/C__Deployment.aspx?fid=439178

В свойствах Добавлена ​​выходного файла в проекте установки, убедитесь, что свойство Регистр устанавливается в vsdrpCOM. Установка этого свойства гарантирует, что файл MSI зарегистрирует компонент ActiveX с помощью инструмента regasm в .NET. Во время установки установщик сам позаботится о регистрации этого компонента C#, чтобы открыть интерфейс COM.

+2

Спасибо, к сожалению, я пробовал это, а также установил все свои DLL для регистрации, некоторые, никого и т. Д. –

0

Не это поможет знать, но здесь идет ..

Я использовал проект InstallShield InstallScript MSI, создал функцию, и для каждой библиотеки DLL, которые должны были быть помещены в GAC создал компонент с целевой GlobalAssemblyCache , Для regasm я установил свойство .NET COM Interop в значение «Да» для необходимой DLL.

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