У меня есть следующий сценарий:
- C # проект A использует неуправляемую dll через p / invoke:
[DllImport("someUnmanaged.dll")]
проект A настроен для копирования "someUnmanaged.dll "в папку bin проекта при компиляции.Это прекрасно работает.
C # Проект B, C и D все ссылаются на A. Но они не копируют автоматически неуправляемую dll.Я должен настроить каждый из этих проектов для копирования неуправляемых DLL.
Итак, если другой разработчик хочет использовать мой projectA.dll, он должен точно знать, какие неуправляемые dll для копирования и как настроить свой проект VS.
Если проект A является управляемым проектом c ++ / cli вместо ac # project, я могу использовать /ASSEMBLYLINKRESOURCE "...\someUnmanaged.dll"
, чтобы указать компилятору всегда копировать someUnmanaged.dll всякий раз, когда он копирует projectA.dll.
(это настройка в свойствах конфигурации -> компоновщик -> ресурс ссылки сборки)
/ASSEMBLYLINKRESOURCE
каким-то образом аннотирует projectA.dll
, так что, когда на эту DLL ссылаются в другом проекте,Visual Studio будет также автоматически искать someUnmanaged.dll
и копировать оба во время компиляции.
Как я могу получить эту функциональность в проекте ac #?