Я работаю на сервере интеграции, и теперь я хотел бы создать решение C#.NET 4.5, которое ссылается на библиотеку COM. COM-объект НЕ установлен на машине CI.
У меня есть файл .tlb под рукой. Я уже создал .dll с помощью tlbimp.exe и включил ссылку в файл .csproj:
<ItemGroup>
<COMReference Include="myComName">
<Guid>{theGUID}</Guid>
<VersionMajor>1</VersionMajor>
<VersionMinor>0</VersionMinor>
<Lcid>0</Lcid>
<WrapperTool>tlbimp</WrapperTool>
<Isolated>False</Isolated>
<EmbedInteropTypes>True</EmbedInteropTypes>
</COMReference>
</ItemGroup>
Однако сборка вызывает следующее предупреждение
warning MSB3284: Cannot get the file path for type library "<theGUID>" version 1.0. Library not registered. (Exception from HRESULT: 0x8002801D (TYPE_E_LIBNOTREGISTERED))
Правда, не зарегистрирован. Я бы предпочел компилятор и компоновщик для получения необходимой информации о типе из сгенерированного файла .dll.
Есть ли способ продолжить сборку без регистрации COM .dll?
Спасибо! Рейнхард.