.NET эквивалент статических библиотек?

Я создаю инструмент в управляемом коде (в основном C ++ / CLI) в двух версиях: версия для обычного пользователя и версия для профессионалов.

Тот факт, что код ядра в двух версиях идентичен, вызвал у меня небольшую проблему, так как я хочу упаковать полученный инструмент как одну сборку (DLL), и я не хочу включать файлы .cpp для общего код в проектах двух версий инструментов. Я предпочел бы иметь проект для общего кода и проект для каждой версии инструмента, и каждая версия проекта инструментов зависит от общего кода и связывает его по желанию.

В неуправляемом C ++ я делал бы это, помещая общий код в статическую библиотеку и связывая с ней обе версии инструмента. Кажется, я не могу заставить это работать в C ++ / CLI. Кажется, я вынужден встроить общий код в сборку DLL, и в результате получается больше DLL, чем хотелось бы.

Итак, в итоге, я не могу понять, как создать общий код в одном проекте и связать его с каждым из конечных проектов продукта, чтобы создать две отдельные сборки DLL, которые обе содержат общий код.

Я, вероятно, делаю что-то не так, но я пытался понять, как это сделать, используя сетевые модули и все такое, и я просто не мог заставить это работать. В конце концов, единственный способ, с помощью которого я заработал, - это сказать компоновщику связать продукты сборки общей сборки кода, а не результаты, которые работают, но это немного взломано ИМХО.

В любом случае, есть ли у кого-нибудь предложения о том, как я ДОЛЖЕН решить эту проблему?

Отредактировано: Полагаю, мне следовало упомянуть тот факт, что сгенерированные сборки не являются на 100% управляемым кодом, они содержат смесь управляемого и неуправляемого кода, что, вероятно, довольно часто встречается в сборках, созданных с помощью C ++ / CLI ...

Ответы на вопрос(7)

Ваш ответ на вопрос