Как зарегистрировать библиотеку типов без RegAsm.exe - PullRequest
5 голосов
/ 04 марта 2010

Я хочу знать, возможно ли зарегистрировать библиотеку типов без использования инструмента RegAsm . Вот моя ситуация, которая, я надеюсь, объяснит, почему я хочу это сделать:

Я разрабатываю сборку в .NET, которая предоставит некоторые современные функциональные возможности для наших старых приложений VB6. Я успешно зарегистрировал сборку и библиотеку типов на моей машине разработки, используя RegAsm, например:

regasm.exe MyAssembly.dll /tlb /codebase

Приведенная выше команда генерирует библиотеку типов (MyAssembly.tlb) и регистрирует ее, а также регистрирует сборку. Мне нужна зарегистрированная библиотека типов, чтобы я мог иметь Intellisense в VB6.

Моя проблема с этим методом заключается в том, что у меня нет такого же уровня контроля при создании файла библиотеки типов, как у меня с TlbExp.exe . В частности, мне нужно использовать флаг TlbExp / names, чтобы указывал правильный регистр имен моих свойств (RegAsm их убивает). Поэтому, если я использую TlbExp для генерации моего tlb-файла, есть ли способ зарегистрировать его отдельно от процесса регистрации сборки?

Редактировать: Ответ da_m_n является правильным для вопроса, который я задал. Однако я ошибочно полагал, что только потому, что RegAsm может зарегистрировать библиотеку типов, необходимо было зарегистрировать tlb, чтобы ссылаться на него в VB6. Итак, сейчас я регистрирую сборку и ссылаюсь на незарегистрированный Tlb-сгенерированный tlb с фиксированными именами.

Ответы [ 2 ]

4 голосов
/ 04 марта 2010

Используйте regtlib.exe для регистрации сгенерированного tlbexp файла tlb.

2 голосов
/ 22 сентября 2017

regtlib.exe недоступно на платформах Win10. Используйте соответствующий TlbExp.exe, как указано в соответствующем .NET SDK (например, "%ProgramFiles(x86)%\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.2 Tools\TlbExp.exe" "$(TargetDir)$(TargetFileName)" см. https://docs.microsoft.com/en-us/dotnet/framework/tools/tlbexp-exe-type-library-exporter).

...